您的位置:首页 > 产品设计 > UI/UE

UI技巧 批量修改控件属性

2015-10-18 21:28 393 查看
前几天一个群友提出了一个问题,就是他已经写好了一个app,然后系统的字体是18号,他希望能调小这个字体,但却又不想再回到代码中修改。

正好在几天前,因为一点事情,重新看了一下分类的概念,然后就决定用类别的方式来解决这个问题。

类别的作用

1.可以使本来需要在.h中声明的方法放到.m文件中声明,使方法变为私有

2.可以扩展或覆盖一个类的功能,包括系统类,维护了代码原本的结构不受影响。

3.可以分散代码到不同的文件之中,比如系统类库里有一个NSObject的类别,并没有卸载NSObject类里,而是写到另外一个类里,主要是因为这个类别扩展的功能和那个类相关,便于将来查看。

这里我们可以利用类别作用的第二点,通过扩展对应的类的功能,来实现属性的修改。

对于群友提出来的问题,他希望修改所有UILable中字体的大小。

思路是:所以通过给UILable写分类来重写UILabel在加载中必须会调用到的方法,对font属性进行提前设置,

- (void)drawTextInRect:(CGRect)rect;
这个方法是绘制lable的文本。
重写这个方法为

就可以进行设置了。

总结:
1.理解类别的用法,就可以通过需求对系统类或者其他的类进行扩展。
2.通过重写一些在类实现中自身会调用的方法来修改属性。
3.对于控件上的每一个可以显示的元素,都有相应的绘制方法,例如上面的UIlabel的文字绘制,UIView的背景绘制,UIImageView的图片绘制等等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: