通过这种方式、可以快速完成简单基础UI的创建。
也不用在定义一堆的控件属性、保持代码干净。
先看示例图
1、简洁版
效果图 需要的代码2、复杂版
效果图 需要的代码省了代码、看这舒心。
具体实现
核心:通过UIView的扩展方式,分别对UIImageView、UILabel等常用控件挨个实现需要的方法和属性。
噗、代码格式没弄出来、凑合着看吧!
统一创建:
///添加内容
//格式1字符串、q_*n+数量/q_view_*h/q_*kf
//格式2数组、[格式1]
-(void)q_addSubitems:(id)item;
对应获取控件的:
/// 根据名字获取元素
/// @paramname通过 数组 q_*k+下标生成 单个直接用q_view_*h/或者
-(UIView*)q_subkey:(NSString*)name;
对应具体属性需要区别对待、(例如UIView+Label):
///文字
@property(nonatomic)NSString * ql_text;
///行数
@property(nonatomic)int ql_line;
///对齐
@property(nonatomic)NSTextAlignment ql_alignment;
///颜色
@property(nonatomic)UIColor * ql_color;
///字体
@property(nonatomic)UIFont * ql_font;
///富文本
@property(nonatomic)NSAttributedString * ql_att;
例如:UIView+Image
///获取图片
@property(nonatomic,readonly)UIImage * qi_img;
///设置图片
@property(nonatomic)NSString * qi_icon;
///填充方式
@property(nonatomic)UIViewContentMode qi_mode;
结语:
常用的控件就这四个、其他的也可扩展、按照基本规则来就行、(先定义Key、然后在具体实现)。
代码地址
https://github.com/quua/QUIExt
最后祝你身份健康、再见。
网友评论