这是情况。 ViewController A当前B,B关闭,然后A当前C。
详细地,单击右上角的ADD按钮,显示Mask ViewController。单击QR按钮,关闭Mask ViewController,然后显示左侧ViewController。
为什么以下代码不起作用:
- (IBAction)clickQR:(UIButton *)sender {
Controller * controllerC = [[Controller alloc] initWithNibName: @"Controller" bundle: nil ];
controllerC.modalPresentationStyle = UIModalPresentationOverFullScreen;
[self.presentingViewController presentViewController: controllerC animated: YES completion:^{
[self dismissViewControllerAnimated: NO completion:^{
}];
}];
}
结果是保持不变。没有解雇或出席。
我认为clickQR事件在ViewController B中,那么B的presentingViewController是A。
我用委托来解决。
- (IBAction)clickQR:(UIButton *)sender {
[self dismissViewControllerAnimated: NO completion:^{
[self.shareVCDelegate clickQR];
}];
}