我有一个视图控制器,它是独立的并且有两个左UIBarButtonItem,但是当我按下它时,我想要这两个按钮+后退按钮
我试过
- (void)viewDidLoad
{
[super viewDidLoad];
// back
if (self.navigationController.navigationItem.backBarButtonItem) {
self.navigationItem.leftBarButtonItems = [NSArray arrayWithObjects:self.navigationController.navigationItem.backBarButtonItem, self.barButtonFilter, self.barButtonFilterContacts, nil];
} else {
self.navigationItem.leftBarButtonItems = [NSArray arrayWithObjects:self.barButtonFilter, self.barButtonFilterContacts, nil];
}
}
如果有后退按钮,则添加,否则替换
但我没有工作
答案 0 :(得分:0)
我无法解决您的问题,但根据您的标题,您想要使用条形按钮项目替换UINavigationController
的后退按钮,在这种情况下,您只需要使用自定义按钮代替背面按钮:
UIBarButtonItem *backButton= [[UIBarButtonItem alloc] initWithTitle:@"yourTitle" style:UIBarButtonItemStylePlain target:self action:@selector(someFunction:)];
self.navigationItem.rightBarButtonItem = backButton;
[backButtonrelease];
如果这不是你的问题,请详细说明。
答案 1 :(得分:0)
所以这里的问题是UINavigationBar
只能有一个leftButtonItem和一个rightButtonItem。但你可以做的是UINavigationBar
的中心,你可以有一个UIView。您可以使用它来放置按钮。
有人在这里有代码:adding-buttons-to-the-titleview-of-navigationbar-without-having-to-repeat-code
答案 2 :(得分:0)
来自Apple的iOS人机界面指南:
如果您需要提供,请使用工具栏而不是导航栏 更大的控件集,或者您不需要启用导航。
避免使用其他控件拥挤导航栏,即使 似乎有足够的空间。导航栏应包含否 不仅仅是视图的当前标题,后退按钮和一个控件 管理视图的内容。相反,如果您使用分段 在导航栏中控制,栏不应显示标题和 它不应包含分段控件以外的任何控件。