1. 程式人生 > >iOS 在xib或storyboard裡為控制元件新增圓角、外框和外框顏色

iOS 在xib或storyboard裡為控制元件新增圓角、外框和外框顏色

如果要在xib和storyboard裡為控制元件新增圓角和外框寬度,只要這樣做就可以

layer.borderWidth     設定外框寬度屬性

layer.cornerRadius    設定圓角屬性

只要為屬性設定value值就可以了

當然修改完xib裡看是看不出來的,要執行才看得到,效果如下

那如果要在xib和storyboard裡修改外框顏色怎麼辦??只有用加其他方法才能實現,例如分類

新增分類

再來就是

生成這檔案

.h檔案裡

複製程式碼
1 #import <QuartzCore/QuartzCore.h>
2 
3 @interface
CALayer (LayerColor) 4 5 - (void)setBorderColorFromUIColor:(UIColor *)color; 6 7 @end
複製程式碼

.m檔案裡

新增一個set方法

複製程式碼
 1 #import "CALayer+LayerColor.h"
 2 
 3 @implementation CALayer (LayerColor)
 4 
 5 - (void)setBorderColorFromUIColor:(UIColor *)color
 6 {
 7     self.borderColor = color.CGColor;
 8 }
 9
10 @end
複製程式碼

假如你的UIColor提示錯誤找不到,那是你沒有匯入UIKit框架

那就在.h或者全域性標頭檔案裡匯入

#import <UIKit/UIKit.h>

這樣就完成基本工作了

現在在xib或者storyboard裡面像之前新增控制元件外框和圓角一樣操作,在新增該屬性

type為color

要注意這是set方法,所以假如分類裡新增的方法為

- (void)setBorderColorFromUIColor:(UIColor *)color;

那麼屬性裡就應該為layer.borderColorFromUIColor

假如是

 - (void)setColorFromUIColor:(UIColor *)color;

那屬性裡就為layer.colorFromUIColor

執行:

 

如果要加上背景顏色,加完顏色後要給控制元件設定屬性

_btn.layer.masksToBounds = YES;

再key path裡面是   layer.masksToBounds,設定完就ok了

這樣就明白該方法是怎麼使用的了,不然設定顏色還是無效的,因為使用方法不對,就是這樣了。