为storyBoard面板中添加圆角属性(添加自定义的属性)
2016-03-01 10:20
302 查看
为了解决这些重复代码的问题,有的人喜欢为View写Category,一行代码实现圆角。然而这需要在不同的ViewController中不断引入这个Category,不够优雅。当然,这种小事情我们也肯定不会愿意采用继承的。
实际上,我们只需要为项目添加一个View的Category,在其中声明一个@property并加上IBInspectable关键字,然后在实现文件中的getter&&setter方法中实现具体的逻辑。不用import头文件,也不需要运行,Storyboard中将自动出现这个属性以供配置。这不正是我们梦寐以求的完全解耦吗!?
实际上,我们只需要为项目添加一个View的Category,在其中声明一个@property并加上IBInspectable关键字,然后在实现文件中的getter&&setter方法中实现具体的逻辑。不用import头文件,也不需要运行,Storyboard中将自动出现这个属性以供配置。这不正是我们梦寐以求的完全解耦吗!?
//UIView+CornerRadius.h @interface UIView (CornerRadius) @property (nonatomic, assign) IBInspectable CGFloat cornerRadius; @end
//UIView+CornerRadius.m @implementation UIView (CornerRadius) - (void)setCornerRadius:(CGFloat)cornerRadius { self.layer.cornerRadius = cornerRadius; self.layer.masksToBounds = cornerRadius > 0; } - (CGFloat)cornerRadius { return self.layer.cornerRadius; } @end
相关文章推荐
- 块级元素和内联元素的区别小结
- Java 重写(Override)与重载(Overload)
- 概要设计怎么写?全面而具体的描述
- C++中erase函数的使用,可以用来删除内存擦除
- clearfix清除浮动
- iOS8以后 UISearchController的用法
- 工作中常用redis命令
- 2月全球域名商(国际域名)注册保有量及份额TOP18
- vnc录屏
- Android学习笔记之java01(更换账号)
- Swift性能探索和优化分析
- DOCTYPE声明混杂模式和严格模式(标准模式)
- linux core dump
- iOS APP启动之前的插画自定义过渡
- 26. Remove Duplicates from Sorted Array
- findbugs错误总结
- JAVA自动化测试中多数据源的切换
- Java 继承
- 酷派f2 Fragment onactivityresult 提前运行
- 【bzoj3998】[TJOI2015]弦论