登录 立即注册
金钱:

Code4App-iOS开发-iOS 开源代码库-iOS代码实例搜索-iOS特效示例-iOS代码例子下载-Code4App.com

iOS 链式编程

[复制链接]
来自: tengshu 分类: iOS精品源码 上传时间: 2018-1-3 12:57:13
Tag:

项目介绍:

一个iOS链式开发的小工具。

github:https://github.com/tengshuq/ChainFunction

常用的控件实现链式编程的一个小框架。。 一般我们创建的代码的方式

UILabel *test1 = [[UILabel alloc] init];
test1.frame = CGRectMake(20, 50, 100, 30);
test1.font = [UIFont systemFontOfSize:13];
test1.text = @"古今多少事";
test1.textColor = [UIColor whiteColor];
test1.backgroundColor = [UIColor lightGrayColor];
test1.textAlignment = NSTextAlignmentCenter;
test1.layer.cornerRadius = 3.f;
test1.layer.borderColor = [UIColor greenColor].CGColor;
test1.layer.borderWidth = 1.f;
[self.view addSubview:test1];

现在,你可以这样创建

UILabel *label = [[UILabel alloc] init];
label.labelChain  // 取到labelChain
.font([UIFont systemFontOfSize:13])
.text(@"链式作死")
.textColor([UIColor greenColor])
.viewMaker()    // 调用到UIView的链
.frame(CGRectMake(20, 100, 100, 40))
.backgroundColor([UIColor whiteColor])
.addToSuperView(self.view)
.labelMaker()   // 可以再回调到label链
.textAlignment(NSTextAlignmentCenter)
.layerMaker()   // 调到layer链
.cornerRadius(5)
.borderColor([UIColor redColor].CGColor)
.borderWidth(1.f); 

这里,UILabel的链不能直接调用UIView链上的属性或方法,需要先调用到UIView的链上面,也就是.viewMaker(),同样的,其他子类也要调用父类的时候属性或方法的时候也需要这么做,同时,父类也可以再调用到子类的链上面,比如.labelMaker()

要注意的一点,调用到CALayer的链.layerMaker()之后,不能再回调回来,所以,最好在最后调用Layer链。因为这个属性的特殊性,每个子类都能直接调用.layerMaker()

目前支持的类有UIView,UILabel,UIScrollView,UITableView,UICollectionView,UICollectionViewFlowLayout,UIControl UIButton,UITextView,UITextField,UIImageView,还有CALayer

作为UITextField和UITextView最常用且比较容易忽略的UITextInputTraits协议中的方法,这里分别复制到了UITextField和UITextView 两个类中,以便使用。。。我在想UIControl中的方法要不要也复制到UIButton和UITextField中去。。。

相关源码推荐:

我来说两句
*滑动验证:
所有评论(5)
BlueManlove 2018-1-5 10:54:40
code4app好的内容真的很多~赞
回复
kengsir 2018-1-5 10:56:06
mark,收藏了
回复
littleRed 2018-1-5 10:56:13
我是来学习的
回复
AlonMessi 2018-1-5 10:56:20
code4app确实是个好地方,必须支持~
回复
phoiu 2018-1-5 10:57:02
感谢分享,code4app有你更精彩
回复
hellokenken 2018-1-5 10:57:09
code4app好的代码demo真的很多,谢谢啦~
回复
code4app热心网友 2018-1-5 14:19:42
虽不明,但觉厉!
回复
code4app热心网友 2018-1-7 06:02:01
楼主用心了,内容非常精彩。
回复
code4app热心网友 2018-1-7 21:24:38
楼主用心了,内容非常精彩。
回复
提取码:  下载次数:8 状态:已购或VIP 售价:0(原价:15)金钱 下载权限:初级码农 
218 0 8
联系我们
首页/微信公众账号投稿

帖子代码编辑/版权问题

QQ:435399051,742864542

如何获得代码达人称号?

代码贡献英雄榜
用户名 下载数
通过邮件订阅最新 Code4App 信息
上一条 /4 下一条
联系我们
关闭
合作电话:
13802416937
Email:
435399051@qq.com
商务市场合作/投稿
问题反馈及帮助
联系我们

广告投放| Github|申请友链|手机版|Code4App ( 粤ICP备15117877号-1 )

快速回复 返回顶部 返回列表