标签:
关于UIButton的事件枚举有许多,平时用的少所以很多的都不是很清楚,今天了解了下,看了以前的代码,觉得在UIButton选中时操作写了许多冗余代码,而忽略了UIButton一个很重要的属性,如下:
中的UIControlStateSelected表示是否选中,NO表示未选中,YES表示选中;
1.这是之前写的:
创建UIButton,通过for 循环去创建
添加响应事件:
这种是最简单的,相对也是最繁琐的,多了很多不必要的冗余代码,下面就让我们看看改进的;
2.通过使用UIButton自己的一个selected属性和normal属性重构的,如下所示:
在创建的时候就给定了正常时候UIButton的样式,和选中UIButton时的按钮颜色,注意这里设置了默认的selected = NO;和UIControlStateSelected
在给定按钮选择事件,设置对应selected的状态值,如下所示:
这样看上去,第二种方法,是不是比第一种方法更简单明了,去除了相关的冗余代码的,效果如下所示
注:改进,上面的我们可以在不同的按钮上面切换状态,但在同一个按钮上面点击多次状态不会改变,针对上述问题做了些许的改动,其实主要是在点击事件里面,判断当前按钮的状态去改变,代码如下:
效果图如下所示:
标签:
原文地址:http://www.cnblogs.com/Free-Thinker/p/5912635.html