2016-08-18 4 views
0

각 화면 크기에 대해 xib 특정을 만들려고하는데 하나는 UIViewController입니다.하나의 클래스 - 소수의 Xibs

소수의 xib를 어떻게 하나의 클래스에 연결할 수 있습니까?

+1

왜 이렇게해야하는지 묻는 것이 중요하다고 생각합니다. 단일 xib 및 autolayout/size 클래스로 문제를 해결할 수 있습니다. 자동 레이아웃을 들여다 보았습니까? –

+0

@PatrickGoley 나는 복잡한 시각을 가지고 있으며 구속 조건으로 조정하는 것은 거의 불가능하며 몇 시간 동안 노력했지만 모든 방법에 대해 특정 xib를 추가하는 것이 가장 좋은 방법이라고 생각합니다. –

+0

여전히 전체 레이아웃을 복제하는 대신 코드에서 단일 xib의 일부 제약 조건을 조정하는 것이 더 쉽습니다. 4 개 이상의 xib 파일에서 UI 작업을 반복하여 유지 관리의 악몽을 꾼다는 것을 깨달아야합니다. 변경이나 업데이트가 필요할 때 자신을 싫어할 것입니다. –

답변

0

MyClass에 당신의 UIViewController

1. 다른 xib

myclass_iphone4 
myclass_iphone5 
myclass_iphone6 

2. 각 xib가 콘센트를 연결하는 파일의 소유자 MyClass에 같은 것 만들기입니다

3. MyClass dyn로드하기 amically :

let deviceSize = //iphone4, iphone5, .... 
let viewcontroller = MyClass(nibName: "myclass_\(deviceSize)", bundle: nil) 

는 당신을 위해 확인 될 수 있다면 내가 코멘트에 알려주십시오.

+0

MyClass는 'UIViewController' 여야합니다. 그리고 그 xib와 클래스 사이에서 어떻게 속성을 공유 할 수 있습니까? –

+0

답변을 업데이트 할 수 있습니까? –

+0

@ FS.O5 업데이트 됨 –