我对ViewControllers层次结构有疑问。
我有一个父VC,我想添加一个像UIAlertView的子视图控制器,我的意思是,我不希望父视图控制器执行添加子视图的方法:
Controller:addChildViewController
,addSubview:self
,didMoveToParentViewController:viewcontroller
,而不是孩子会将其运行在父母身上:
这是子init方法:
- (id)initWithParentViewController:(UIViewController *)viewcontroller
{
self = [self initWithNibName:@"DCYGarmenSelectionViewController" bundle:NULL];
if (self) {
[viewcontroller addChildViewController:self];
[viewcontroller.view addSubview:self.view];
[self didMoveToParentViewController:viewcontroller];
}
return self;
}
在视图中将显示方法我设置视图的位置。
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
self.view.center = CGPointMake(self.parentViewController.view.frame.size.width/2, self.parentViewController.view.frame.size.height/2);
}
所以,父母只是运行:
DCYGarmenSelectionViewController *child = [[DCYGarmenSelectionViewController alloc]initWithParentViewController:self];
child.delegate = self;
我的问题是,你认为这是好的还是这是一个很大的错误。
Thanksssss !!!!!