以编程方式更改UIBarButtonItem的标识符属性

rei*_*ein 5 iphone cocoa-touch uibarbuttonitem

通过Interface Builder,我可以将UIBarButtonItem的Identifier更改为"Add"(或"Undo","Redo"等...).这为我的按钮提供了一个漂亮的"+"图像.

我该如何以编程方式设置它?UIBarButtonItem不接受"setIdentifier"消息.

rei*_*ein 6

构建后,无法修改UIBarButtonItem的"标识符".但是,可以通过使用以编程方式构造的变体替换按钮来更改UI.例如:

UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd 
                                                                           target:self 
                                                                           action:@selector(doAddAction:)];
Run Code Online (Sandbox Code Playgroud)

  • 您对此帖的标题具有误导性.这不会更改UIBarButtonItem的标识符,它只是创建一个初始化了identifier属性的新标识符.我正在寻找一种方法来修改现有按钮上的标识符.更好的标题是"以编程方式设置新创建的UIBarButtonItem的标识符属性"或类似的东西. (10认同)
  • 对不起,你偶然发现了我的解决方案,但这并不符合你的期望.在问这个问题时,我正在寻找一种方法,实际上,改变它.解决方案对我有用 - 如果它不适合你,那么我很抱歉. (2认同)