Cen*_*ion 3 iphone objective-c uinavigationcontroller uinavigationitem
我有一个选项卡式应用程序,其中包含选项卡中的导航控制器和视图控制器.所有这些都使用相同的导航控制器导航栏:后退按钮+徽标图像.目前,我将此代码放在每个视图控制器中:
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationItem.title = @"Back";
UIImage *headerImage = [UIImage imageNamed:@"Logo.png"];
self.navigationItem.titleView = [[[UIImageView alloc] initWithImage:headerImage] autorelease];
}
Run Code Online (Sandbox Code Playgroud)
恕我直言,这不是最好的方法.我正在考虑使用UIViewController的类别并覆盖viewDidLoad方法,但是每个视图控制器都有一些额外的代码要在viewDidLoad中执行,所以我猜覆盖不是解决方案.还有什么其他方法?
您可以创建的子类UIViewController,MyViewControllerWithBackButtonAndLogo(你能想出更好的名字),然后执行viewDidLoad设置的导航项目.使所有视图控制器继承自此基类.然后只需确保视图控制器调用[super viewDidLoad]它们自己的实现.
另请注意,要设置后退按钮标题,不应更改导航项的title属性,而应设置适当的属性backBarButtonItem.
| 归档时间: |
|
| 查看次数: |
5692 次 |
| 最近记录: |