美文网首页
iOS oc 链式UI

iOS oc 链式UI

作者: livesxu | 来源:发表于2019-01-24 23:27 被阅读0次

旨在:让通用UI创建变得简单。当然,扩展适用于绝大多数链式场景,动手试试吧。

示例效果

正文:NSObject+Chain_lx

1.NSObject+Chain_lx.m中提供系列方法和函数,与对应的返回体(传参)进行对应;

2.通过LXChainList方法:先获取到默认链式字典(chainDictionary)、自定义链式字典(customChainDictionary)中所有的方法和对应的映射类型,根据NSObject+Chain_lx中对应映射类型获取相关方法的imp,在对应类中动态添加方法.(添加外部注册dic方法LXChainWithDic)

注意:目前定义常用映射类型

链式映射类型

3.扩展链式方法和属性:先建立一个新的类目,对想要扩展的属性在.h中添加对应方法(例:属性为xxx,则添加方法为lx_xxx),传参对应;再在.m中复写customChainDictionary方法,添加@"lx_xxx":@"映射类型"。(添加外部注册dic方法LXChainWithDic)


子类创建属性 动态添加了一个属性并添加对应链式方法 链式方法绑定关联

4.如果是一个新类,不属于(UIView、UIImageView、UITextField、UITextView、UILabel、UIButton),那么将还需要一步,在适当的地方用类调用LXChainList(例:我是放在的类目的load中调用了,建议(较真那就看着办))(添加外部注册dic方法LXChainWithDic)


类调用注册链式 load中注册链式示例

5.这时基本已经完成。但是此时的.m里面是会报worning的,看着就很烦,会提示方法未实现,其实在动态添加里面实现了的,那就要消除这些worning


前置 后置

6.结论:本方案提供简单的链式操作的可行性指导和应用,如有欠缺和建议欢迎回复/讨论。

Demo地址

相关文章

网友评论

      本文标题:iOS oc 链式UI

      本文链接:https://www.haomeiwen.com/subject/wltpjqtx.html