xib设置lable设置圆角和边框,颜色

**********************************************
2018.5.26日更新:此生在不用xib。。。
**********************************************


//设置圆角

layer.cornerRadius ,注意该 key 对应 Value 的 type 应该设置为 

layer.masksToBounds ,注意该 key 对应 Value 的 type 应该设置为 Boolean , 当右侧出现对号时为YES

*注意*:经过测试,UILabel 必须设置设置 masksToBounds 这一键值对,才会出现圆角效果;UIButton、UIView、UIImageView 只需设置 layer.cornerRadius 这一键值对就可实现圆角效果

 

/*

layer.cornerRadius  String          10 //圆角效果

layer.borderWidth   Number       1    //边框宽度

layer.borderUIColor     Color   对应的颜色   //  设置边框颜色

layer.masksToBounds            Boolean       //这个加不加都不影响,可以不加。

#import "CALayer+MPXibConfiguration.h"
@implementation CALayer (MPXibConfiguration)
-(void)setBorderUIColor:(UIColor *)color
{
  self.borderColor=color.CGColor;
}
-(UIColor *)borderUIColor
{
  return [UIColor colorWithCGColor:self.borderColor];
}
@end

*/ 

 

//设置边框颜色

通过xib快速设置边框

所用方法和上面所讲Xib设置圆角基本相同,唯一不同的就是设置 key Path 键值对

设置边框需要到的Key Path:

layer.borderWidth ,注意该 key 对应 Value 的 type 应该设置为 String

layer.borderColor , 注意该 key 对应 Value 的 type 应该设置为 Color

*注意*:不知道你有没有注意到 layer.borderColor 对应值得类型:Color;经常用代码进行边框设置的你,一定记得我们设置的颜色类型为CGColor,不错问题就出在了这上面,按照上述方法我们设置的边框颜色为 UIColor 类型,当然不会起作用了啊。下面就给出一种简便的解决方法,我们只需要为 CALayer 创建一个分类就可以了,具体代码如下:

CALayer+ZZYXibBorderColor.h

#import <QuartzCore/QuartzCore.h>
@interface CALayer (ZZYXibBorderColor)

@end

CALayer+ZZYXibBorderColor.m

#import "CALayer+ZZYXibBorderColor.h"
#import <UIKit/UIKit.h>

@implementation CALayer (ZZYXibBorderColor)

- (void)setBorderColorWithUIColor:(UIColor *)color
{

    self.borderColor = color.CGColor;
}

@end
posted @ 2017-05-19 17:17  do+better  阅读(2175)  评论(0编辑  收藏  举报