以编程方式修改 UIToolBar 项目
我使用 Interface Builder 创建了一个工具栏。我的工具栏中有许多按钮,它们连接到各种 IBAction
方法。我想做的是,当选择一个项目时,通过改变另一个项目的色调来在视觉上使其变灰。
如何获取对 BarButtonItem
的引用?我不知道在哪里可以给每个标签一个唯一的名称,以便我可以具体引用它。
更新
我为工具栏创建了一个IBOutlet
,因此我现在可以访问它。不幸的是,当我尝试设置 tintColor
时,它崩溃了。这是我的代码:
UIBarButtonItem *penButton = [_toolBar.items objectAtIndex:3];
UIBarButtonItem *crossButton = [_toolBar.items objectAtIndex:4];
penButton.tintColor = [UIColor darkGrayColor];
crossButton.tintColor = [UIColor whiteColor];
抛出的错误:
由于未捕获的异常而终止应用程序 'NSInvalidArgumentException',原因:'-[UIBarButtonItem setTintColor:]: 无法识别的选择器发送到实例 0x631df50'
I have created a toolbar using Interface Builder. I have a number of buttons in the toolbar that are hooked up to various IBAction
methods. What I want to do is, when selecting one item, visually grey out another by changing it's tint.
How can I get a reference to the BarButtonItem
? I can't see where I can give each label a unique name where so that I can reference it specifically.
Update
I created an IBOutlet
for the tool bar so i now have acces to it. Unfortunately when I try to set the tintColor
it crashes. Here is my code:
UIBarButtonItem *penButton = [_toolBar.items objectAtIndex:3];
UIBarButtonItem *crossButton = [_toolBar.items objectAtIndex:4];
penButton.tintColor = [UIColor darkGrayColor];
crossButton.tintColor = [UIColor whiteColor];
The error thrown:
Terminating app due to uncaught exception
'NSInvalidArgumentException', reason: '-[UIBarButtonItem
setTintColor:]: unrecognized selector sent to instance 0x631df50'
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
试试这个:
Try this: