有谁知道如何隐藏rightBarButtonItem
的{{1}}?在我的应用程序中,我有一个编辑按钮作为UINavigationController
的{{1}}。我想隐瞒这个?一些操作完成后,UIBarButton`。
答案 0 :(得分:16)
隐藏右键:self.navigationItem.rightBarButtonItem = nil;
现在,要表明:
如果您在视图控制器中设置了右键,则将其分配给self.editButtonItem,然后再次分配它以显示它:
self.navigationItem.rightBarButtonItem = self.editButtonItem;
如果通过分配和启动UIBarButtonItem在视图控制器中设置右键,则只需在视图控制器中保留对UIBarButtonItem的引用,并在需要显示时再次分配它。
答案 1 :(得分:13)
尝试
self.navigationItem.rightBarButtonItem = nil;
如果你想要它,你必须实现一个按钮,即
UIBarButtonItem *rightBarButton =
[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSearch
target:self
action:@selector(searchBar:)];
self.navigationItem.rightBarButtonItem = rightBarButton;
[rightBarButton release];
答案 2 :(得分:13)
如果您需要根据某些条件隐藏/显示按钮,请尝试以下操作:
if (condition) {
self.navigationItem.rightBarButtonItem.title = @"";
self.navigationItem.rightBarButtonItem.enabled = NO;
} else {
self.navigationItem.rightBarButtonItem.title = @"my button title";
self.navigationItem.rightBarButtonItem.enabled = YES;
}
这样您就不必在属性中保存对按钮的引用,也不用担心在新按钮上对操作进行连接。