Xcode 更改rightBarButtonItems标题

Xcode 更改rightBarButtonItems标题,xcode,button,Xcode,Button,如何更改右侧按钮按钮的标题 我在导航栏的右侧有多个按钮,虽然如果只有一个rightbarButton,我可以更改按钮的标题,但对于多个按钮,我不能 doneButton = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonSystemItemDone target:self action:@selector(doneTouch)]; editButton = [[UIBarButtonItem alloc] init

如何更改右侧按钮按钮的标题

我在导航栏的右侧有多个按钮,虽然如果只有一个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];
我想更改编辑按钮的标题,但无法使用:

[self.editButtonItem setTitle:@"Done"];

除了导航栏,您还需要使用工具栏,也可以使用带有标题的自定义按钮。在导航栏上,只能添加左右两个按钮。

编辑首先获取栏按钮参考

 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";
}
if(self.navigationItem.rightBarButtonItem.title==@“编辑”){

好的,可能是一个伪代码

但是对于新手,不要使用==…比较字符串,只有Swift允许


使用isEqualToString

但我使用的是一组按钮用于我的RightBarButtonim,而不是RightBarButtonim。