通过Interface Builder,我可以将UIBarButtonItem的Identifier更改为“Add”(或“Undo”,“Redo”等...)。这为我的按钮提供了一个漂亮的“+”图像。
如何以编程方式设置此代码? UIBarButtonItem不接受“setIdentifier”消息。
答案 0 :(得分:6)
构建后,无法修改UIBarButtonItem的“标识符”。但是,可以通过使用以编程方式构造的变体替换按钮来更改UI。例如:
UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd
target:self
action:@selector(doAddAction:)];
答案 1 :(得分:2)
如果你想要一个按钮样式:有边框和标识符:相机使用
UIBarButtonItem *btn;
btn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCamera target:self action:@selector(shotAction:)];
btn.style=UIBarButtonItemStyleBordered;
答案 2 :(得分:0)
创建UIBarButtonItem后,无法更改标识符。但是,您可以创建一个新的UIBarButtonItem来替换旧的UIBarButtonItem
UIBarButtonItem *barButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction
target:self
action:@selector(buttonClickedAction:)];
self.navigationItem.rightBarButtonItem = barButton;