天天看點

UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影

 在iOS開發中,任何可見視圖都是繼承于UIView的。    繼承體系中,大部分UIView的屬性适用于其任何孩子。

UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影

       而UIView的layer屬性可以繪制UIView的各種效果。其實我們看到的View的動畫實際上也是layer在繪制。

1、繪制圓角

[objc]  view plain copy

UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
  1. cornerView.layer.cornerRadius = 20;  
  2. cornerView.layer.masksToBounds = YES;  

masksToBounds防止子元素溢出父視圖。

如果一個正方形要設定成圓形,代碼為:

[objc]  view plain copy

UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
  1. cornerView.layer.cornerRadius = cornerView.frame.size.height/2;  
  2. cornerView.layer.masksToBounds = YES;  

2、繪制邊框

[objc]  view plain copy

UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
  1. borderView.layer.borderWidth = 1.0;  
  2. borderView.layer.borderColor = [UIColor blackColor].CGColor;  

注意此處使用的是CGColor而不是UIColor.

3、繪制陰影

[objc]  view plain copy

UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影
  1. shadowView.layer.shadowColor = [UIColor redColor].CGColor;  
  2. shadowView.layer.shadowOffset = CGSizeMake(5.0, 5.0);  
  3. shadowView.layer.shadowOpacity = YES;  

offset為偏移量,為正表示向frame x,y坐标增加的方向偏移。

opacity為透明度,預設為0,即表示透明的。是以我們要把opacity設定成1或者YES,表示不透明,也可以設定成0.5或者類似的值呈現半透明。

效果如下:

UIView,UIButton,UIImageView等設定圓角,設定陰影,設定邊框的方法 1、繪制圓角 2、繪制邊框 3、繪制陰影