是否可以在运行时更改UIBarButtonItem标题和样式?

时间:2010-06-13 02:41:48

标签: iphone

在一个项目中,我希望在运行时更改UIBarButtonItem和样式

editBarItemButton链接到原始状态为

的UIBarButtonItem

式:UIBarButtonItemStyleBordered 标题:修改

如果我按下条形项按钮,它将执行以下代码:

[editBarItemButton setStyle: UIBarButtonItemStyleDone];
[editTarBarItemButton setTitle:@"Done"  ];

但风格和标题都没有改变。

欢迎任何评论

由于 InterDev中

4 个答案:

答案 0 :(得分:6)

UIBarButtonItem初始化之后,您无法更改{{1}}的样式。

答案 1 :(得分:4)

旧线程,但我使用以下方法成功更改了导航控制器中UIBarButtonitem的标题:

[[[self navigationItem] rightBarButtonItem] setTitle:@"List"];

答案 2 :(得分:1)

只需删除旧按钮即可 使用所需的样式创建新按钮 设置新按钮

答案 3 :(得分:1)

你想要做的是这样的事情(为你的app保留本地化):

- (void)setBarButtonTo:(int)type
{
    UIBarButtonItem *add = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:type     target:self action:nil];
    [self.navigationItem setRightBarButtonItem:add];
}

其中type是提供的系统之一,UIBarButtonSystemItemDoneUIBarButtonSystemItemEdit。希望这可以帮助。 :)

PS:我知道这是一个老问题,但缺乏正确答案。