iOS 7 AutoLayout 과 topLayoutGuide 를 이용한 화면 맞추기 에서 했던 방법은


스토리보드를 사용 시 적용할 수 있는 방법이고 XIB 위주로 만들어진 레이아웃에서 iOS6 이하와, 7 모두 잘 맞게 맞추는 방법을 알아보겠습니다.




기존 6.0 미만을 지원하는 프로젝트인 경우 Xib의 우측 유틸리티 섹션에 첫번째 탭인 File inspector 에 보면 Use Autolayout 항목이 체크 해제되어있을 것입니다.


보통 이 상태로 iOS7 에서 실행해보면 아래와같이 상태바 영역까지 콘텐츠가 밀려 올라와있는것을 볼 수 있습니다.


일단 iOS7 에서 잘 보일 수 있도록 ViewController.view의 sub view 들을 모두 선택하여 20포인트 아래로 끌어줍니다.


메인 뷰의 자식뷰들을 모두 선택


객체들을 상태바 아래로 이동


일단 에디터 창에서 상태바 아래로 모두 내렸으면 하위뷰들을 모두 선택한 상태에서 오른쪽 Size inspector 를 선택합니다.


그리고 아래와 같이 iOS6 / 7 Deltas 라고 되어있는곳의 Delta Y 항목을 -20을 셋팅합니다.


그리고 iOS6으로 실행!


짜잔~ 잘 나왔죠? (Text Field 문자열 짤린건 패스.. ㅋㅋ)



xib에서 배치된 객체들은 이렇게 한번에 처리가 됩니다.


다만 뷰가 로드된 이후 프로그램 로직에 의해 재 배치 되는 경우는 iOS 버전에 따라 위치를 보정해줘야 합니다.


자~ 이제 모두모두 즐거운 iOS7 호환성 작업을 시작해 봅시다!


+ Recent posts