1

rightbarButtonItemsのボタンのタイトルを変更するにはどうすればよいですか?

ナビゲーション バーの右側に複数のボタンがありますが、rightbarButton が 1 つしかない場合はボタンのタイトルを変更できますが、複数の場合は変更できません。

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"];
4

3 に答える 3

0

ナビゲーションバーの代わりにツールバーを使用する必要があります。タイトル付きのカスタムボタンを使用することもできます。ナビゲーションバーでは、左右に2つのボタンしか追加できません。

于 2012-09-12T06:32:00.523 に答える
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";
}
于 2012-09-12T06:34:19.883 に答える