如何更改 rightbarButtonItems 上按钮的标题?
我在导航栏的右侧有多个按钮,但如果只有一个rightbarButton我可以更改按钮的标题但是我不能更改多个按钮。
doneButton = [[UIBarButtonItem alloc]
initWithTitle:@"Done"
style:UIBarButtonSystemItemDone target:self action:@selector(doneTouch)];
editButton = [[UIBarButtonItem alloc]
initWithTitle:@"Edit"
style:UIBarButtonItemStylePlain
target:self action:@selector(Edit:)];
NSArray *myButtonArray = [[NSArray alloc] initWithObjects:doneButton,editButton,nil];
[self.navigationItem setRightBarButtonItems:myButtonArray];
我想更改 editButton 的标题,但我无法使用:
[self.editButtonItem setTitle:@"Done"];
答案 0 :(得分:0)
您需要使用工具栏,而不是导航栏,您可以使用带有标题的客户按钮。在导航栏上,您只能左右添加两个按钮。
答案 1 :(得分:0)
编辑首先获取条形按钮参考
NSArray *arrBarBtn = self.navigationItem.rightBarButtonItems;
if([arrBarBtn count]>0)
{
for(UIBarButtonItem *barBtn in arrBarBtn)
{
//do as per your requirement.
if(barBtn.title == @"Edit")
{
barBtn.title == @"Done";
}
}
}
改变如下:
if(self.navigationItem.rightBarButtonItem.title == @"Edit") {
//Do your stuff;
self.navigationItem.rightBarButtonItem.title = @"Done";
}
else if(self.navigationItem.rightBarButtonItem.title == @"Done"){
//Do your stuff;
self.navigationItem.rightBarButtonItem.title = @"Edit";
}
答案 2 :(得分:0)
if(self.navigationItem.rightBarButtonItem.title == @“Edit”){ ..
好的,可能是伪代码。
但是对于新手,不要使用==来比较字符串......只有Swift会允许它。
使用isEqualToString