UI 보기에 패딩 추가
추가할 방법을 찾고 있습니다.padding
UIV 뷰의 속성입니다.이상적으로는 하위 분류를 피하고 범주에 포함시키고 싶습니다.용도는 다음과 같습니다.
myview.padding = UIEdgeInsetsMake(10, 10, 10, 10);
그리고 아마도.paddingBox
a를 반환할 수 있는 재산도.CGRect
내부 패딩 박스의 크기와 위치를 설명합니다.
자, 그런 종류의 것을 어떻게 구현할 수 있을까요?처음에는 사용하려고 생각했습니다.bounds
하지만 불행하게도 그 크기는bounds
의 크기와 연결되어 있습니다.frame
(항상 동일) 좌표만 다를 수 있습니다.
이 작업은 일반적으로 뷰 내에서 경계를 설정하여 수행됩니다.그래서 만약 당신이 전체적으로 10개의 삽입물을 원한다면 당신은 할 수 있습니다:
view.bounds = CGRectInset(view.frame, 10.0f, 10.0f);
경계는 프레임을 기준으로 뷰의 그릴 수 있는 영역을 정의합니다.그래서 이것은 사실상 패딩을 줄 것입니다.그런 다음 경계에서 '패딩 박스'를 얻을 수 있습니다.
이것이 도움이 되길 바랍니다! :)
Swift 5+의 업데이트, 그것은
view.bounds = view.frame.insetBy(dx: 10.0, dy: 10.0);
스위프트 3용 업데이트
view.bounds = view.frame.insetBy(dx: 10.0, dy: 10.0)
:)
업데이트: iOS11부터 사용해야 합니다.directionalLayoutMargins
대신에layoutMargins
.
출처: https://developer.apple.com/documentation/uikit/uiview/1622566-layoutmargins?language=objc
iOS 8 이후로, 각 보기는 이제layoutMargins
패딩에 해당하는 속성입니다.
myview.layoutMargins = UIEdgeInsetsMake(10, 10, 10, 10);
AutoLayout을 사용하는 경우 다음과 같은 형식을 사용합니다.|-[subview]-|
,|-
로 정의된 에지를 참조합니다.layoutMargins
.
출처: https://developer.apple.com/reference/uikit/uiview/1622566-layoutmargins?language=objc
alignmentRectInsets 속성을 재정의할 수 있습니다.Swift 4의 예는 다음과 같습니다.
class YourCustomView: UIView {
override var alignmentRectInsets: UIEdgeInsets {
return UIEdgeInsets(top: 10, left: 10, bottom: 10, right: 10)
}
}
정말로 해야 할 일은 보기를 만들고 하위 보기를 추가하는 것입니다.배경을 한 번 보고 원하는 프레임을 지정합니다.그런 다음 두 번째 하위 뷰를 모서리를 세트로 하여 원하는 프레임으로 만듭니다.
UIView backgroundView = new UIView(CGRect.FromLTRB(0, 0, 100, 100))
{
BackgroundColor = backgroundGray,
};
//Will have a right edge inset of 10
UIView edgyView = new UIView(CGRect.FromLTRB(0, 0, 90, 100))
{
BackgroundColor = backgroundGray,
}
backgroundView.AddSubview(edgyView);
Swift 4에 대한 업데이트:
self.yourView.layoutMargins = UIEdgeInsets(top: 8, left: 8, bottom: 8, right: 8)
다음과 같이 뷰의 프레임/경계를 삽입할 수 있습니다.
yourView.frame = yourView.frame.inset(by: UIEdgeInsets(top: .zero, left: 5.0, bottom: 5.0, right: .zero)
언급URL : https://stackoverflow.com/questions/14856821/adding-padding-to-an-uiview
'sourcetip' 카테고리의 다른 글
대응 기본 표준 시간대 및 형식 지정 옵션 (0) | 2023.08.16 |
---|---|
ifelse 문 안에서 여러 값을 설정하는 방법은 무엇입니까? (0) | 2023.08.16 |
CSS의 PNG 이미지에 대한 그림자 삭제 (0) | 2023.08.16 |
도커가 이미지를 새로 빌드하도록 강제하는 방법 (0) | 2023.08.16 |
Powershell: match 연산자가 true를 반환하지만 $matches가 null입니다. (0) | 2023.08.16 |