我已将另一个视图控制器添加到viewcontroller视图
addsubview工作正常,但下一个视图中的按钮操作无效。
崩溃并出现错误[ModelViewController performSelector:withObject:withObject:]:消息发送到解除分配的实例0xa81d960
View1中的:当前视图控制器UsersViewController类
-(IBAction)openModelView:(id)sender
{
ModelViewController *modelView= [self.storyboard instantiateViewControllerWithIdentifier:@"ModelViewController"];
[self.view addSubview:modelView.view];
}
在View 2 ModelViewController类
中-(IBAction)dismissModelView:(id)sender
{
NSLog(@"ddddddde");
//[self.view removeFromSuperview];
[self.view removeFromSuperview];
}
使用presentViewConroller工作正常 [self presentViewController:modelView animated:NO completion:nil]
* 效果很好 *,
但 我需要在背景中显示第一个视图,部分透明
答案 0 :(得分:7)
这是范围问题,只需将子控制器添加到根视图控制器即可避免崩溃。
self.view addSubview:modelView.view];
[self addChildViewController:modelView];
答案 1 :(得分:1)
-(IBAction)openModelView:(id)sender
{
ModelViewController *modelView= [self.storyboard instantiateViewControllerWithIdentifier:@"ModelViewController"];
[self.view addSubview:modelView.view];
[self addChildViewController:modelView];
}