我有四个UIButton
添加到自定义UIToolBar
,当我按下并调用动作功能时,我可以更改按下按钮的selected state
。问题是我不知道如何获取其余按钮并更改其selected
属性。使用segmentedControl
?
如图所示,当其中一个被选中时,我不会改变其余的状态..
我使用此代码执行此操作:
if([sender tag] == i){
if([sender isSelected]){
NSLog(@"selected");
[sender setSelected:NO];
} else {
NSLog(@"No selected");
[sender setSelected:YES];
}
我试过这个,但它出错了:
for( int i = 0; i < 4 ; i++){
if([sender tag] == i){
if([sender isSelected]){
NSLog(@"selected");
[sender setSelected:NO];
} else {
NSLog(@"No selected");
[sender setSelected:YES];
}
} else {
UIButton *btn = (UIButton *)[self viewWithTag:i];
if([btn isSelected]){
NSLog(@"selected");
[sender setSelected:NO];
} else {
NSLog(@"No selected");
[sender setSelected:YES];
}
}
}
答案 0 :(得分:1)
使用items
消息向工具栏询问其项目数组。你得到的是一份UIBarButtonItems。然后,您可以查询每个项目的状态。假设UIBarButtonItem有一个自定义视图,你可以得到它,验证它的类是一个UIButton,然后告诉它获取或设置状态。