자동 레이아웃 : Top Layout Guide가 아닌 Superview에 구속 조건을 추가 하시겠습니까?
스토리 보드의 UIViewController에 UIView가 있으며 상단 가장자리와의 거리를 보는 공간에 제약 조건을 추가하려고합니다.
이제 Ctrl + ViewView의 기본보기로 드래그하여 평소대로 할 때 최상위 레이아웃 가이드로 설정하는 옵션 만 얻습니다.
앱의 어느 시점에서 메인 뷰를 약 20-50px 위로 이동하려고하면 그 일이 일어나지 않을 것입니다 ... 슈퍼 뷰에 정렬되지 않았기 때문에 이것이 발생합니다.
스토리 보드에서 수동 으로이 작업을 수행하거나 프로그래밍 방식으로 추가해야합니까?
xcode 6을 사용하고 있습니다.
구속 상수 값의 오른쪽에 화살표가 있습니다. 그것을 클릭하면, 당신은 당신이 상대적인 제약을 만들고 싶은 것을 선택할 수있는 메뉴가 나타납니다. '보기'를 선택하면보기 상단에 고정됩니다.
스토리 보드에서 원하는보기를 강조 표시 한 다음 Editor > Pin > Top Space to Superview
최상위 메뉴에서 선택 하면됩니다.
이것은 XCode 7에서 구식입니다. 대신 @PaulGurov의 답변을 참조하십시오.
TL; DR : Alt키보드 의 키를 눌러 여백을 제한 할 수 있습니다 .
고정하려는 뷰가 고정하려는 뷰의 직접 하위 뷰가 아닌 경우 제안 된 방법이 실제로 유효하지 않다는 것을 추가 할 수도 있습니다. 뷰 계층 구조가 다음과 같다고 가정하면 이미지 뷰 ( Parallax Image View
이 경우)를 뷰 컨트롤러의 뷰 (이 경우)에 고정하려고합니다 View
.
이렇게하려면 당신은 그냥 Control+ Drag로부터 Parallax Image View
받는 View
. 그러면 상단 레이아웃 가이드 Vertical Spacing to Top Layout Guide
에 고정 할 수있는 기본 선택 사항이 나타납니다 Parallax Image View
.
원하는 것은 뷰의 상단 (여백)에 고정하는 것입니다. 그러기 위해서는를 눌러 다른 구속 조건 세트로 전환해야합니다Alt
I had a whole bunch of constraints already there and I just wanted to change them rather than break them. Turns out if you double click on the constraint to edit, then click on the item that has the ".Margin", you can just turn off the "Relative to Margin" by selecting that item.
Dan's answer works. I just wanted to state that if you set your view in storyBoard at y < 20, and configure constraints through the pin panel, it will set top to superview:
If the height of the view is set to 0 by accident, Vertical Space to Top Layout Guide will NOT appear. Vertical Space to Bottom Layout Guide will appear, however, which must have made sense to someone inside Apple circa 2004.
None of the above answers worked for me, instead I have to do a hack to set my subview's top with superview's top instead with Top layout guide.
- 먼저 슈퍼 뷰로 서브 뷰 센터를 세로로 설정합니다.
- 그런 다음 슈퍼 뷰뿐만 아니라 서브 뷰에 대한 중심 Y 구속 조건을 상단 구속 조건으로 변경하십시오.
당신은 지금 가도 좋습니다.
'developer tip' 카테고리의 다른 글
LocalDate를 LocalDateTime 또는 java.sql.Timestamp로 변환 (0) | 2020.08.03 |
---|---|
Java 패키지에서 특성 파일로드 (0) | 2020.08.03 |
설정된 최하위 비트의 위치 (0) | 2020.08.02 |
레이아웃 XML 파일에 포함을 사용할 때 ID를 지정하는 방법 (0) | 2020.08.02 |
UILabel은 레이블 크기에 맞게 텍스트를 자동 축소하지 않습니다. (0) | 2020.08.02 |