ios - with - 아이폰 레이아웃




Xcode 6의 Storyboard에서 "여백 제한"이란 무엇입니까? (2)

UIView의 속성은 layoutMargins 입니다. Apple 문서를 참조하십시오. 기본적으로 레이아웃 여백이 8,8,8,8 (기본값) 인 경우 컨테이너 여백에 선행 공백이 0 인 제약 조건의 x 위치는 8 입니다. 이는 iOS8 이상에서만 사용할 수 있습니다.

제약 조건을 컨테이너 여백으로 보내지 않으려는 모든 사람들에게 :

Ctrl + 클릭 + 끌어서 제약 조건 생성 팝업을 표시합니다.

메뉴가 기본적으로 여백에 대한 제한 조건을 작성하는 것으로 표시되면 옵션 / alt를 눌러 컨테이너 여백이 아닌 컨테이너에 제한 조건을 허용하십시오.

이제는 여백이 아닌 제약 조건을 생성하는 옵션이 표시됩니다. 이것은 나의 사용에서 더 빠를 것이다.

저는 autolayout 및 제약 Constrain to margins 하여 XCode 5에없는 XCode 6의 Constrain to margins 옵션이 있으며 기본적으로 선택되어 있는지 확인했습니다.

테스트 프로젝트를 생성 한 다음 프레임이 뷰와 동일한 크기로 설정된 ViewController에 UITableView 를 추가하고 제약 조건을 추가했습니다.

XCode 6 viewview와 동일한 프레임이 tableview에 있어도 XCode는 제약 조건으로 -16을 추가하는 반면 XCode 5는 간격 0을 추가하는 것이 좋습니다.

이제 "여백 제한"옵션의 선택을 취소하면 XCode 5와 동일하게 동작하며 제약 조건으로 0을 추가 할 것을 제안합니다.

또한 Constrain을 마진 검사에 추가 한 후 Xcode 5에서 스토리 보드 파일을 열 수 없으므로 Xcode 6에서 새로운 기능을 제공합니다.

바라기를, 나는 나의 질문을 제대로 설명 할 수있다. "마진 제한"이 실제로하는 일과 내가 그것을 사용해서는 안되는 것을 이해하고 싶습니다. 아주 단순하고 명백한 것이라면 사과드립니다.

편집하다

토론에서 레이아웃 여백에 대해 뭔가를 찾았습니다. 관련이 있는지 궁금합니다.


iOS 8에서는 이제 수퍼 뷰의 경계 대신 미리 정의 된 한계에 상대적으로 제한자를 정의 할 수 있습니다. 예, 문서에서 지적한 레이아웃 여백과 완전히 관련됩니다. 한 가지 장점은 각 장치의 종류에 따라 마진을 동적으로 재정의 할 수 있으며, 제약 조건을 수정하지 않고도 레이아웃이 그에 따라 업데이트된다는 것입니다.

언제 사용해야합니까?이 새로운 유연성을 활용하고 싶을 때.

사용하지 않을 경우 : iOS 7 이하에서 실행되도록 타겟팅 된 앱의 경우.







xcode6