从主视图控制器知道所呈现的模态视图控制器何时被解除?

时间:2012-02-11 20:10:20

标签: objective-c ios modalviewcontroller presentmodalviewcontroller

我想知道当它呈现的模态视图控制器被解除时是否可以从视图控制器中获知? (即当它的视图返回时?)

我试过了:

viewWillAppear
viewDidAppear

但是,这些似乎没有用:(

有人可以建议吗?感谢。

1 个答案:

答案 0 :(得分:0)

这是一个回调解决方案,它对您的模态和父级进行较少的修改:

在模型中.h添加:

@property (nonatomic, copy) void (^dismissed)();

在模型的.m中,当你解雇模态时,把它放在完成中:

[self dismissViewControllerAnimated:YES completion:^{
    if(self.dismissed)
        self.dismissed();
}];

在实例化模态时,在父视图控制器中设置解除的回调:

Modal = //Init your modal
[Modal setDismissed:^{
    //do stuff you wanted when it's dismissed
}];
[self presentViewController:Modal animated:YES completion:nil];