XIB 设置UIView的圆角边框等属性
来源:互联网 发布:mysql数据库创建表语句 编辑:程序博客网 时间:2024/06/02 16:56
在开发中,经常会用到一些圆角效果,或者边框效果,经常用的方法是通过代码直接去设置,比较方便快捷;
但是当我们通过 XIB创建出一个控件后,也需要这样的一些圆角或边框效果,能不能直接通过 XIB里面的一些方法直接设置呢?答案是有的
其主要设置的方式是通过在 XIB操作栏的User Defined Runtime Attributes中通过 KEY PATH去设置当前控件的属性,具体步骤如下图所示:
设置圆角最常用的是设置圆角,边框颜色,因此需要用到的 key Path有一下几个:
- layer.cornerRadius ,注意该 key 对应 Value 的 type 应该设置为 String/Number
两种类型均可(代码设置弧度为:thisViewlayer.masksToBounds = YES) - layer.masksToBounds ,注意该 key 对应 Value 的 type 应该设置为 Boolean ,
当右侧出现对号时为YES(代码圆角为:thisView.layer.masksToBounds = YES) - layer.borderWidth ,注意该 key 对应 Value 的 type 应该设置为 String/Number
两种类型均可(代码设置边框宽度为:thisViewlayer.borderWidth = 2) - layer.borderColor , 注意该 key 对应 Value 的 type 应该设置为
Color(代码设置边框颜色:thisView.layer.borderColor = [UIColor
redColor].CGColor)
其实如果你从上面一直敲下来的话:
你会发现只有1和2的两句代码是有效的;
3,4两句代码看起来并没有效果
原因:其实是因为在设置borderColor的时候,需要接受的是一个CGColor,而在 key Path中只有Color,其实就是 UIColor,类型是不对的,因此并没有正确显示想要展现的颜色.
因此这样的写法是有问题的.
我是通过添加一个CALayer的类扩展实现的,将key Path中设置的UIColor转换成为CGColor,为边框设置颜色,实现如下:
#import "CALayer+XibBorderColor.h"#import <UIKit/UIKit.h>@implementation CALayer (XibBorderColor)- (void)setBorderColorWithUIColor:(UIColor *)color{ self.borderColor = color.CGColor;}@end
这样以后,只需要将key Path中的layer.borderColor修改成为layer.setBorderColorWithUIColor 就可以了
最终的效果如下:
0 0
- XIB 设置UIView的圆角边框等属性
- iOS 在storyboard/xib中设置UIView的圆角等属性
- xib中设置圆角,边框宽度,边框颜色等
- 如何给UIView等控件用xib设置圆角属性
- UIView,UIButton,UIImageView等设置圆角,设置阴影,设置边框的方法
- UIView,UIButton,UIImageView等设置圆角,设置阴影,设置边框的方法
- UIView,UIButton,UIImageView等设置圆角,设置阴影,设置边框的方法
- UIView,UIButton,UIImageView等视图设置圆角,设置阴影,设置边框的方法
- UIView,UIButton,UIImageView等设置圆角,设置阴影,设置边框的方法
- UIView,UIButton,UIImageView等设置圆角,设置阴影,设置边框的方法
- IOS设置UIView、UIButton等控件的边框设置为圆角
- 用xib设置圆角,边框和UITextField的私有属性placeholderColor
- 用xib设置圆角,边框和UITextField的私有属性placeholderColor
- UIView在Xib中的边框设置
- 在xib上给UIView添加边框或圆角
- 使用xib 来设置UIView 的layer 属性
- iOS xib下设置UILabel等控件的边框
- xib中设置控件的边框以及圆角
- 批量修改帝国CMS发布时间,最简单的方法!
- Coding Android 客户端 开源库简介
- Cpp_Primer--using注意事项 与 Range-Based for
- HDU 5772 (最大权闭合图 最小割)
- XXX
- XIB 设置UIView的圆角边框等属性
- linux文件内容查找高级命令 grep egrep fgrep
- HDU 5704 Luck Competition
- JDBC-驱动类型
- windows消息机制(MFC)
- 游戏包体大小的那些事
- POI
- HDU 5706 GirlCat
- 【Windows 8】pid为4的system进程占用80端口的解决办法