我现在正在使用tabbar Controller 和uinavigation Controller ,当我通过presentviewcontroller调用MFMailComposeViewController,并被dismissviewcontrolleranimated解散时,我向后滑动并单击再次推送viewcontroller我发现返回按钮消失并且标题错误.
Tab-> ViewController [A] (Navigation Controller Embed) -(PUSH)-> ViewController[B] (带后退按钮) -(Present)-> MFMailComposeViewController -(Dismiss)-> Show ViewController[B] -( Swipe Back)-> ViewController [A] -(Push) -> ViewController[B] (后退按钮消失,标题错误)
即使我按下而不是向后滑动,我发现仍然有一些问题不像往常那样导航推送 Controller
如果有人能提供帮助,非常感谢!
在所有这些之后,ViewController[B] pop/swipe back to ViewController[A] viewdidappear 和 ViewController[A] 中的 viewwillappear 功能都没有被触发。
Best Answer-推荐答案 strong>
我的应用程序中的流程完全相同,但导航栏困惑没有任何问题。
以下是 View Controller 的创建方式:
MFMailComposeViewController *mailVC = [[MFMailComposeViewController alloc] init];
委托(delegate)已设置:
mailVC.mailComposeDelegate = self;
显示 View Controller :
[self presentViewController:mailVC animated:YES completion:nil];
当用户按下导航栏中的取消按钮时, View Controller 在委托(delegate)方法中被解除:
- (void)mailComposeControllerMFMailComposeViewController*)controller didFinishWithResultMFMailComposeResult)result errorNSError*)error
{
[self dismissViewControllerAnimated:YES completion:nil];
}
希望这会有所帮助。
关于ios - 关闭呈现的 View Controller IOS 后 UINavigationController 行为错误,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/36465602/
|