先說一下原理互捌,就是利用中間變量來記錄某個選中狀態(tài)的按鈕惑畴,加一個判斷黍少,如果用戶下一次點擊的不是這個按鈕那么用中間變量把這個按鈕的選中狀態(tài)取消掉寡夹,再把新的按鈕賦值給中間變量,這能保證選中狀態(tài)的惟一性厂置;
代碼:
第一步:3個按鈕
@property (weak, nonatomic) IBOutlet UIButton *GoodBt;
@property (weak, nonatomic) IBOutlet UIButton sendBt;
//記錄狀態(tài)的按鈕
@property (strong,nonatomic)UIButton * tmpBtn;
第二步:兩個要選中的按鈕響應同樣的方法
[self.sendBt addTarget:self action:@selector(buttonSelected:) forControlEvents:UIControlEventTouchUpInside];
[self.GoodBt addTarget:self action:@selector(buttonSelected:) forControlEvents:UIControlEventTouchUpInside];
第三步:進行記錄判斷
-(void)buttonSelected:(UIButton)sender{
if (_tmpBtn == nil){
sender.selected = YES;
_tmpBtn = sender;
}
else if (_tmpBtn !=nil && _tmpBtn == sender){
sender.selected = YES;
}
else if (_tmpBtn!= sender && _tmpBtn!=nil){
_tmpBtn.selected = NO;
sender.selected = YES;
_tmpBtn = sender;
}
}
完成了按鈕2選一效果菩掏;
如果是多個按鈕的選一個,參考文章:
http://www.bubuko.com/infodetail-1139059.html
謝謝大家昵济。