iphone - [[tabBarController] navigationController]和self.navigationController之间的区别

时间:2011-02-12 18:28:28

标签: iphone objective-c uinavigationcontroller uitabbarcontroller

我有一个带有tabbarcontroller的应用程序,对于一个选项卡我使用了navigationcontroller。

有人可以告诉我[[self tabBarController] navigationController]self.navigationController之间有什么区别吗?

3 个答案:

答案 0 :(得分:2)

[[self tabBarController] navigationController]将获得tabBarController所在的navigationController。

self.navigationController获取self所在的navigationController。

如果各个实例不属于navigationController的堆栈(如果它们不在navigationController中),这些属性将返回nil

答案 1 :(得分:0)

我认为[[self tabBarController] navigationController]是所选标签的当前导航控制器。 self.navigationController是当前类的导航控制器。

答案 2 :(得分:0)

http://developer.apple.com/library/ios/documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006926-CH3-SW44

如果请求属性的控制器位于导航控制器的堆栈中,则navigationController属性将返回导航控制器。

标签栏控制器不是标签栏的导航控制器的一部分,在您的情况下应为零。