@2017-7月
1可视化控件的awakeFromNib不调用?
因为用代码注册了cell
2scrollView添加子控件布局无效? 最好不要用masonry,直接用frame
还有tableView的头视图,用masonry布局有时会莫名其妙的高度不对,用frame约束宽高即可
3attributeStr 的特例字体被设置到整个label? 先设置label字体,再设置attributeStr即可
4rac信号订阅失败? 订阅block是subcribNext,而不是doNext
5masonry的remakeConstaint无效? 如果xib控件在约束面板,拖线约束,那么之后用masonry无效
@2017-4月
1使用realm数据库,简书地址:http://www.jianshu.com/p/a3c081a70757
@2017-3月
1数组不能直接深拷贝,相关资料:http://www.jianshu.com/p/976070ac4949
2尺寸感觉:一个汉字月10个像素距离
3uibutton如果有内容,布局可不设宽高,会灵活自适配,在做精细约束时,可运用之
4如何组建多层级的自定义子控件?
<可以给第二梯级的子控件单独成类,或成文件
<也可以直接给子控件添加其子控件,布局时让孙控件参照子控件即可。
孙控件的事件也一般交给自定义控件
案例:给自定义表情键盘的topToolBar添加子按钮。
5图片要做成圆角,可美工给的外边距不够怎么办? (刘辉扬)
用UIButton的内边距,insect属性
6控件的宽高比例美感: 可以使用0.618比例
7算法分析之充分利用环境各对象的特征,去确定环境类型
案例:做自定义键盘,为了知道当前自定义键盘是否被提高了,做了这几个尝试
1一开始想到定义一个frame属性,用来存储一开始的frame值,然后做比较
2后来我根据此时的环境发现,根据此时控制器的view的Y值是否为0,即可知答案,省略了定义一个属性
以及一大堆操作
@2017-2月
1代码规范之如何给一个类,健壮得写出的那些相关的方法接口?比如一系列的构造方法
1定义基础的方法1,拥有所有要拥有的方法参数接口,并判断得实现逻辑
2定义方法2,做减法,当我不需要传入某个参数时,就调用方法1,并在里面把那个参数设为一个默认值
示例代码
//方法4 - (instancetype)initWithCards:(NSArray *)cards ; //方法3 - (instancetype)initWithCards:(NSArray *)cards cover:(Bool) cover; //方法2 - (instancetype)initWithCards:(NSArray *)cards size:(sizeType) size //方法1 - (instancetype)initWithCards:(NSArray *)cards size:(sizeType) size cover:(Bool) cover;
2设计方式之面向接口编程
<让定义与实现分离,让代码更好的复用
3精准代码和可扩展性代码
<1比如要展示一个文本,可以用一个最简单的label,也可用略复杂的button
如果为了更轻量化,且以后也不会扩展更改,用label即可
但考虑到以后,可能要监听点击用户点击,可能要设置图片,那就最好用button