4

我在 viewcontroller 视图中添加了另一个视图控制器,

addsubview 工作正常,但下一个视图中的按钮操作不起作用。

崩溃并出现错误 [ModelViewController performSelector:withObject:withObject:]: message sent to deallocated instance 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]*效果很好*,

我需要在背景中显示第一个视图,并带有一些部分透明

4

2 回答 2

9

这是范围问题,只需将子控制器添加到根视图控制器即可避免崩溃。

    self.view addSubview:modelView.view];
    [self addChildViewController:modelView];
于 2013-09-11T12:17:09.603 回答
1
-(IBAction)openModelView:(id)sender
{
   ModelViewController *modelView= [self.storyboard instantiateViewControllerWithIdentifier:@"ModelViewController"];

    [self.view addSubview:modelView.view];
    [self addChildViewController:modelView];
}
于 2013-09-11T12:07:28.570 回答