解决多个button点击只有一个高亮的方法

如图

解决多个button点击只有一个高亮的方法_第1张图片
多个按钮

把这六个button全部连进一个方法里。

- (IBAction)clickUpInside:(UIButton*)sender{

if(sender.selected==NO) {

         self.selectedBtn.selected=NO;

         self.selectedBtn= sender;

         sender.selected=YES;

}elseif(sender.isSelected==YES){

         sender.selected=NO;

};

}

解决,selectedBtn是在.m文件里申明,用来记录当前点击的button状态。


还可以申明一个记录上次点击的button,就是下面代码中的lastButton

- (IBAction)clickUpInside:(UIButton*)sender{

//点击不是上次点的button

if(self.lastButton!= sender) {

         NSLog(@"current click button is not last clicked button");

}

if(sender.selected==NO) {

              [selfchangeClickButton:sender];

}elseif(sender.isSelected==YES){

              sender.selected=NO;

};

             self.lastButton = sender;

}

-(void)changeClickButton:(UIButton*)sender{

       self.selectedBtn.selected=NO;

       self.selectedBtn= sender;

       sender.selected=YES;

}

你可能感兴趣的:(解决多个button点击只有一个高亮的方法)