iOS自定义控件要注意的问题

来源:互联网 发布:航海王娜美工口h本子 编辑:程序博客网 时间:2024/05/22 21:01
一.建议使用约束进行布局,Masonry非常好用,强烈推荐
1.部分iOS工程师不用约束,使用frame设置位置,是因为不知道咋给使用了约束界面加动画,其实这个很简单的,我就写了篇博客,地址是http://blog.csdn.net/mlcldh/article/details/52689699

二.初始化方法

1.尽量不要自己单独封装,一是因为项目需求改变后,不方便以后修改,二是因为初始化化完,经常还用到读取属性的方法,属性可能需要改变

2.如果自定义的视图继承与UIView,那就在initWithFrame方法里添加控件,因为外部初始化该控件会使用init、initWithFrameh或者new,而initWithFrame方法是UIView的指定初始化方法,后面3个方法都会调用initWithFrame

3.如果使用约束的话,在初始化方法里就可以给子视图添加约束了


三.类和属性命名

1.如果使用Objective-C的话,因为Objective-C没有命名空间,为了避免代码冲突,要在类的名字前面加上一个前缀,该前缀一般是在2到4个的长度

2.尽量做到见名知意,类和属性的命名,结尾尽量用父类,比如ELUpdateView、ELSettingAccountTableViewCell、ELRechargeControl 、rechargeControl、titleLabel等

3.

四.方法的命名

1.

五..h和.m文件编写

1.将供其他类调用或继承的属性、方法、宏、通知名称放到.h文件里


总结

Objective-C和js这两者有个有意思的对比:类、属性、方法命名的风格正好相反。Objective-C命名都是用英文全称并且要多详细有多详细,力求看变量和方法名就能知道是做啥的,例如application:didFinishLaunchingWithOptions:。而js因为每次都要从网络下载,要力求减少代码体积,所以变量方法名是尽量用缩写,实际上有代码压缩工具,无论变量名写多长最终上线的效果是一样的,但大家也都习惯了用短的命名,例如上述Objective-C的application:didFinishLaunchingWithOptions:方法在js里习惯的命名是:$()。

很多iOS工程师对类、属性、方法的命名都不注意,经常喜欢使用简写,其实这很容易造成代码不清晰。很多程序员有个误区,就是认为代码越少越好,其实不然,容易维护的代码才是好代码,除非你只是做一锤子买卖……


未完待续……


1 0
原创粉丝点击