UIButton三状态切换小技巧(可扩展至更多状态)

之前写项目的时候,一般对于UIButton的状态的使用,最常见的就是点击后,把Button的selected的状态进行非操作,让它在两个状态之间来回切换,一般的需求也就是这样,但是这次的项目中,遇到需要三种状态切换的,用了个很次的方法处理,但是后期再处理其他项目的时候,突发奇想,其实三种状态也可以做的到,不需要依赖于Button本身的状态去考虑,一下就是对这个想法的分享,如果大家有更好的方法,也希望能够回复我,对我指点一下,谢谢大家。

话不多说,以按钮有三个状态来考虑,每次点击,自动从1切换到2,2切换到3,3切换到1,如此反复,思路也简单,取余,直接上代码:

- (IBAction)orderStatusAction:(UIButton *)sender {
    //让索引值每次取余3后再赋值给自身,这样,就在一个0~2之间的范围循环
    self.statusIndex = (self.statusIndex + 1) % 3;
    switch (self.statusIndex) {
        case 0:
            [self.orderStatusButton setTitle:@"状态1" forState:UIControlStateNormal];
            break;
        case 1:
            [self.orderStatusButton setTitle:@"状态2" forState:UIControlStateNormal];
            break;
        default:
            [self.orderStatusButton setTitle:@"状态3" forState:UIControlStateNormal];
            break;
    }
}

这就是我的一点思路,我觉得挺好用的,如果需要更多状态,可以取4、5、6...等数字的余数,但是一般只用于三种状态就好了,4种以上的状态,我建议直接用列表选择,会更有效率。

如有想法,欢迎分享,谢谢大家!

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

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,707评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,225评论 4 61
  • 多谢你如此光彩耀眼 做我平淡岁月里星辰. " 想在四月和你一起淋雨 不说喜欢也是喜欢你 " 说戏的人在笑 听戏的人...
    小千晨阅读 3,146评论 0 2
  • 最近大鱼海棠上映 我也算不上什么等了多年的粉丝 看了以后 感觉还可以吧 有被感动的点 但翻阅了豆瓣,知乎等高逼格社...
    毫无逻辑的确有道理阅读 1,761评论 0 1
  • 本博客采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本博客文章必须也遵循署名-非商业用途-保持一致...
    Andrew_liu阅读 13,814评论 12 56