taf*_*rel 12 uinavigationcontroller uinavigationitem ios
我不明白有什么区别
self.navigationcontroller.navigationitem和self.navigationitem
我有基于导航的应用程序和导航控制器的viewDidLoad方法rootViewController我通过使用此代码将NavigationItem titleView设置为自定义图像
UIImageView* titleImage=[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image.png"]];
self.navigationItem.titleView =titleImage;
Run Code Online (Sandbox Code Playgroud)
顺便说一句,如果我试图通过这种方式改变titleview
UIImageView* titleImage=[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image.png"]];
self.navigationcontroller.navigationItem.titleView =titleImage;
Run Code Online (Sandbox Code Playgroud)
一切都没发生.,当navigationcontroller将另一个视图推送到堆栈时,navigationitem的titleview被清除,引用设置为nil,而且我也注意到引用self.navigationcontroller.navigationitem和self.navigationitem不相同.
我相信你提出的问题如下:self.navigationController.navigationItem和self.navigationItem.我忽略了问题的其余部分,因为这对问题不是很重要.
据我所知,self.navigationController.navigationItem它是无用的,因为它正在访问导航控制器的导航项(即你的rootViewController).你真正想要的是self.navigationItem,视图控制器的导航项,因为这基本上会出现在你的视图控制器中.
UINavigationController是子类,UIViewController因此self.navigationController.navigationItem只是子类化的溢出方法.它没有做任何积极的事情(至少根据我的经验).
编辑:阅读此内容以进一步说明.
| 归档时间: |
|
| 查看次数: |
5328 次 |
| 最近记录: |