1 개의 View Controller가 CustomViewContainer로 작동하며 처음에 시작할 때 1 개만 추가 된 2 개의 하위보기 컨트롤러가 있습니다.iOS 5의 맞춤 컨테이너보기 컨트롤러에 하위 컨트롤러를 추가하려면 addSubView가 필요합니까?
자식 컨테이너의 addChildViewController
을 호출 한 다음 자식의 didMoveToParentViewController
을 연속적으로 호출해도 내 자식 뷰가 화면에 표시되지 않습니다. 대신, 여전히 상위 컨트롤러의보기를 볼 수 있습니다.
@implementation ContainerViewController // inherits from UIViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
LOG_METHOD_SIG();
if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])
{
// ChildViewController is a subclass of UIViewController
_childController = [[ChildViewController alloc] initWithNibName:nil bundle:nil];
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
[self addChildViewController:_childController];
// Expected the following line to display the child controller's view
[_childController didMoveToParentViewController:self];
}
내가 'addChildViewController'
후 [self.view addSubview:_childController.view]
를 추가하는 경우
첫 번째 하위보기 컨트롤러를 추가하는 경우 'transitionFromViewController'를 호출 할 수 있으며 '그렇다면'보기 컨트롤러는 무엇입니까?
1 명의 자식으로 시작하고 나중에 두 번째 자식을 추가하지 않으려는 경우 - 'fromViewController'가 0이어야합니까? –
질문에 대한 오해를했습니다. 필자의 첫 번째 뷰 컨트롤러의 하위 뷰는 addSubview를 사용하여 삽입해야합니다. 후속 뷰 컨트롤러는 내 답변의 메소드를 사용하여 표시 할 수 있습니다. –