最近在使用XIB开发的过程中涉及到UIView的圆角边框设置的一些问题,在此记录下来、便于以后查看
首先看效果图:
对于这个效果我们很容易实现、这次主要记录XIB的使用
第一种代码实现:
self.testView.layer.masksToBounds = YES;
self.testView.layer.cornerRadius = 50;
self.testView.layer.borderWidth = 5;
self.testView.layer.borderColor = [UIColor blueColor].CGColor;
相关宏设置
#define ECViewBorderRadius(View, Radius, Width, Color)\
\
[View.layer setCornerRadius:(Radius)];\
[View.layer setMasksToBounds:YES];\
[View.layer setBorderWidth:(Width)];\
[View.layer setBorderColor:[Color CGColor]]
第二种XIB实现:
设置圆角最常用的是设置圆角,边框颜色,因此需要用到的 key Path有一下几个:
1.layer.cornerRadius ,注意该 key 对应 Value 的 type 应该设置为 String/Number 两种类型均可
2.layer.masksToBounds ,注意该 key 对应 Value 的 type 应该设置为 Boolean
3.layer.borderWidth ,注意该 key 对应 Value 的 type 应该设置为 String/Number 两种类型均可
4.layer.borderColorFromUIColor 注意该 key 对应 Value 的 type 应该设置为color 并且需要加CALayer的分类、如下
#import <QuartzCore/QuartzCore.h>
@interface CALayer (Extension)
- (void)setBorderColorFromUIColor:(UIColor *)color;
@end
#import "CALayer+Extension.h"
@implementation CALayer (Extension)
- (void)setBorderColorFromUIColor:(UIColor *)color {
self.borderColor = color.CGColor;
}
@end
特别注意:
layer.borderColorFromUIColor
这个属性必须写正确、要不然不会出现边框颜色