微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

UINavigationController并提供一个模式控制器

如何解决UINavigationController并提供一个模式控制器

如果有一个rootViewController,它将显示全屏的UIScrollView。当我点击UIScrollview时,我想翻转屏幕并显示一个设置屏幕(该屏幕还有第二个屏幕,这是navigationController的原因)。 我可以在rootViewController中使用以下代码显示设置屏幕:
self.navController = [[UINavigationController alloc]
initWithRootViewController:self.settingsViewController];
然后:
[self.navController pushViewController:self.settingsViewController animated:YES];
我的问题是:在设置视图中完成操作后,如何返回到rootViewController,所以我在其中创建导航Controller的控制器类因此不在堆栈中。     

解决方法

我采用了Apple在节拍器示例中使用的解决方案。 我将settingsViewController设置为navigationController的rootViewController。比我使用以下命令显示navigationController:
[self presentModalViewController:navController animated:YES];
按照苹果的示例,我创建了settingsViewControllerDelegate接口,该接口被rootViewController采用。该接口并不复杂,只是需要由rootViewController实现的委托实例var和回调方法(settingsViewControllerDidFinish)。在该方法中,您调用:
[self dismissModalViewControllerAnimated:YES];
这样,我可以使用navigationController进行几个设置屏幕,并且可以从navigationController返回到rootViewController。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。