2009-12-15 7 views
2

MyProjectViewController.xib가있는 새로운 뷰 기반 앱 프로젝트를 만들었습니다. 그런 다음 acomanying XIB 파일로 AnotherViewController 클래스를 만들었습니다. IB에서 MyProjectViewController.xib를 열고 "View Controller"개체를 내 창에 놓았습니다. 그러나 이제는 MyViewViewController.xib 뷰를 통해 뷰 컨트롤러의 뷰를 연결하려고합니다. 나는 IB에서 그 일을 할 방법이 없다고 생각합니다. 프로그래밍 방식으로해야하나요?보기 컨트롤러의보기를 다른 xib 파일에 연결하는 방법은 무엇입니까?

사실, AnotherViewController는 XIB 권한으로 생성됩니까? 어떻게 든 연결해야한다고 생각합니다. 그렇지 않으면 "공간이 없어졌습니다". 희망을 내 뜻 알았는데 ...

답변

2

당신은 UIView 파생 클래스 (.h와 .m)를 만들 수 있습니다 Xcode에서 AnotherView 전화하고 Xcode (또한 Xcode에서)보기를 만듭니다. IB에서 XIB를 열고 뷰의 클래스 ID를 UIView 파생 클래스 인 AnotherView의 이름으로 변경합니다. 여러분의 마음의 콘텐츠에 IB에 UIView의 사용자 정의 다음은 다음과 같이 사용하여 뷰 컨트롤러에 하위 뷰으로로드 :

NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"AnotherView" 
               owner:self options:nil]; 

// Will need to #import "AnotherView.h" for this to work 
AnotherView *view = (AnotherView*)[array objectAtIndex:0]; 
// Size the view to whatever you need it to be 
[view setFrame:viewRect]; 
// Add it to the view hierarchy of the view controller's view. 
[[self view] addSubview:view]; 

당신은 어떤 설명이 필요한 경우 알려주세요.

+0

안녕하세요, Matt, 도움 주셔서 감사합니다. 사실 저는 IB에서 모든 것을하고 싶었습니다. 프로그램 적으로하지 않았습니다. 내 문제는 뷰 기반 앱 템플리트와 함께 제공되는 첫 번째 뷰 컨트롤러의 xib를 구성했기 때문입니다. 거기에, 나는보기가 메인보기의 작은 하위보기입니다 다른보기 컨트롤러를 넣어 싶습니다. 스스로 만든 uiview 하위 클래스로 시도해보십시오. 아마도 작동합니다. – openfrog

+1

그런 경우에는보기 컨트롤러의 XIB에 또 다른 UIView를 만들면 최상위보기 컨트롤러에서 연결 한 액션과 콘센트를 추가하여 사용자 정의 할 수 있습니다. –

관련 문제