sct*_*lsn 3 objective-c uiviewcontroller uiimagepickercontroller uinavigationcontroller ios6
在我的根UIViewController中,我提出了一个UINavigationController.UINavigationController最终推送另一个视图(让我们称之为MyViewController).如何从MyViewController中解除整个UINavigationController(及其推送的视图)?
从MyViewController,我试过调用[[self.navigationController presentingViewController] dismissViewControllerAnimated:NO completion:nil]但没有发生任何事情.我还尝试首先从导航控制器弹出所有视图控制器,但仍然没有解除导航控制器.
谢谢!
更新:
我已经找到导致此问题的原因,但无法解决问题.上面描述的UINavigationController是UIImagePickerController的自定义子类(我们称之为CameraController),源类型为UIImagePickerControllerSourceTypeCamera.一切都按预期工作(使用下面提供的答案),直到我cameraOverlayView在CameraController上设置自定义viewDidLoad.评论以下几行可以解决问题:
self.showCameraControls = NO;
UIView *overlay = [[[NSBundle mainBundle] loadNibNamed:@"CameraController" owner:self options:nil] objectAtIndex:0];
self.cameraOverlayView = overlay;
Run Code Online (Sandbox Code Playgroud)
你可以打电话dismissViewControllerAnimated:NO给self.navigationController自己.
[self.navigationController dismissViewControllerAnimated:NO completion:nil];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7560 次 |
| 最近记录: |