我使用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'
答案 0 :(得分:6)
试试这个:
NSArray *items = [myUIToolbar items];
for (UIBarButtonItem *barButton in items) {
//do something with button
}