多个按钮UIButton并列显示,选中的发现变化,未选择为默认样式

需要功能如:这样的几个功能相似的按钮布局,常常出现于我们的应用中。点击某个按钮,该按钮会变为一种明亮颜色。而其他剩下的按钮,会统一为一种暗淡的颜色。

1、我们往往会为这些按钮,统一设置为一个点击事件;

2、其中我们在全局中设置一个中间变量 UIButton *selectBtn ;点击后的按钮我们设置为这个中间变量,然后判断再次点击按钮是否为上次点击过的按钮,假如是的,我们就不要改变;

3、代码方法贴在下方;以免遗忘,留下参考


- (void)buttomBtn:(UIButton *)btn{

//上次点击过的按钮,不做处理

if(selectBtn == btn ) {

SelectIndex = selectBtn.tag - 99;

} else{

//本次点击的按钮设为黑色

[btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

btn.backgroundColor = [ColorTools colorWithHexString:@"#f39700"];

btn.layer.borderColor =  [ColorTools colorWithHexString:@"#f39700"].CGColor;

SelectIndex = btn.tag - 99;

//将上次点击过的按钮设为白色

[selectBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];

selectBtn.backgroundColor = [UIColor clearColor];

selectBtn.layer.borderColor =  [UIColor whiteColor].CGColor;

}

selectBtn= btn;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。