很多技术人员习惯于用纯代码设置Button或者其他View的边框属性,
eg: UIView* view = [[UIView alloc]init];
view.layer.borderWidth=2.0;
view.layer.cornerRadius=5.0;
view.layer.borderColor= [UIColorredColor].CGColor;
但是现在也有相当一部分人喜欢在自定义控件的时候,使用Xib,或者用sb来进行布局,那么这时候怎么来使用storyboard或者Xib给View设置边框属性就无从下手了,接下来提供的解决方法希望能给予大家帮助.
通过storyboard的运行时属性runtime attribute,可以对Button设置圆角,边框和边框颜色.(xib同理)
layer.borderWidth和layer.conerRadius可以顺利的设置成功,但是边框的颜色不一定好使,这时候需要给layer添加一个分类.
然后在你的分类.h文件中添加一个属性
在分类的.m文件中实现如下方法
最后设置好你的边框宽度,颜色,圆角.就可以愉快的玩耍了
- (UIImage *)obtainCircleImage {
UIGraphicsBeginImageContextWithOptions(self.size, NO, 0.0);
// 获取上下文
CGContextRef ref = UIGraphicsGetCurrentContext();
// 设置圆形
CGRect rect = CGRectMake(0, 0, self.size.width, self.size.height);
CGContextAddEllipseInRect(ref, rect);
// 裁剪
CGContextClip(ref);
// 将图片画上去
[self drawInRect:rect];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
这个方法就是设置圆角图片, 效率很高, 不会造成卡顿现象, 大家要把这个方法单独放到分类中使用.