让 ViewControllers 访问 NavigationController 的好方法?
Posted
技术标签:
【中文标题】让 ViewControllers 访问 NavigationController 的好方法?【英文标题】:Good way to have ViewControllers accessing NavigationController? 【发布时间】:2011-03-08 17:07:59 【问题描述】:我是 iPhone 编程的新手,我正在编写一个顶部有 NavigationBar 和几个连续 ViewController 的应用程序。
我想知道:我应该如何设计这样的东西?显然 ViewControllers 需要访问 NavigationController,但是怎么做呢?我创建了一个 UINavManagedViewController 存储对导航控制器的引用,并且所有视图控制器都派生自该类。
@interface UINavManagedViewController : UIViewController
UIManagingNavigationController *navManager;
@property (nonatomic, retain) UIManagingNavigationController *navManager;
@end
但是,由于这显然是所有程序员都会遇到的事情,所以我想知道处理这种设置的默认方式。我的 iPhone 初学者编程书没有处理这种情况。
【问题讨论】:
【参考方案1】:看看UIViewController class reference。所有 UIViewController 都已经有一个 navigationController
属性,它提供了对其父导航控制器的引用(如果存在的话)。
【讨论】:
navigationController
是否还有一个内置方法可以在推送新视图时将self
添加到该属性?
当您将视图推送到控制器时,它会自动添加。太棒了!以上是关于让 ViewControllers 访问 NavigationController 的好方法?的主要内容,如果未能解决你的问题,请参考以下文章
《现代命令行工具指南》8. 备忘清单:让常用命令能够信手拈来 - navi
《现代命令行工具指南》8. 备忘清单:让常用命令能够信手拈来 - navi
如何从它的项目 ViewControllers 访问 UITabBarController 的变量