国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

IOS 開發之swift中UIView的擴展使用的實例

2020-07-26 02:41:44
字體:
來源:轉載
供稿:網友

IOS 開發之swift中UIView的擴展使用的實例

擴展類代碼:

import UIKit  extension UIView {   // MARK : 坐標尺寸      var origin:CGPoint {     get {       return self.frame.origin     }     set(newValue) {       var rect = self.frame       rect.origin = newValue       self.frame = rect     }   }      var size:CGSize {     get {       return self.frame.size     }     set(newValue) {       var rect = self.frame       rect.size = newValue       self.frame = rect     }   }      var left:CGFloat {     get {       return self.frame.origin.x     }     set(newValue) {       var rect = self.frame       rect.origin.x = newValue       self.frame = rect     }   }      var top:CGFloat {     get {       return self.frame.origin.y     }     set(newValue) {       var rect = self.frame       rect.origin.y = newValue       self.frame = rect     }   }      var right:CGFloat {     get {       return (self.frame.origin.x + self.frame.size.width)     }     set(newValue) {       var rect = self.frame       rect.origin.x = (newValue - self.frame.size.width)       self.frame = rect     }   }      var bottom:CGFloat {     get {       return (self.frame.origin.y + self.frame.size.height)     }     set(newValue) {       var rect = self.frame       rect.origin.y = (newValue - self.frame.size.height)       self.frame = rect     }   }      // MARK: - 位移      // 移動到指定中心點位置   func moveToPoint(point:CGPoint) -> Void   {     var center = self.center     center.x = point.x     center.y = point.y     self.center = center   }      // 縮放到指定大小   func scaleToSize(scale:CGFloat) -> Void   {     var rect = self.frame     rect.size.width *= scale     rect.size.height *= scale     self.frame = rect   }      // MARK: - 毛玻璃效果      // 毛玻璃   func effectViewWithAlpha(alpha:CGFloat) -> Void   {     let effect = UIBlurEffect.init(style: UIBlurEffectStyle.Light)     let effectView = UIVisualEffectView.init(effect: effect)     effectView.frame = self.bounds     effectView.alpha = alpha          self.addSubview(effectView)   }      // MARK: - 邊框屬性      // 圓角邊框設置   func layer(radius radius:CGFloat, borderWidth:CGFloat, borderColor:UIColor) -> Void   {     if (0.0 < radius)     {       self.layer.cornerRadius = radius       self.layer.masksToBounds = true       self.clipsToBounds = true     }          if (0.0 < borderWidth)     {       self.layer.borderColor = borderColor.CGColor       self.layer.borderWidth = borderWidth     }   }      // MARK: - 翻轉      // 旋轉 旋轉180度 M_PI   func viewTransformWithRotation(rotation:CGFloat) -> Void   {     self.transform = CGAffineTransformMakeRotation(rotation);   }      // 縮放   func viewScaleWithSize(size:CGFloat) -> Void   {     self.transform = CGAffineTransformScale(self.transform, size, size);   }      // 水平,或垂直翻轉   func viewFlip(isHorizontal:Bool) -> Void   {     if (isHorizontal)     {       // 水平       self.transform = CGAffineTransformScale(self.transform, -1.0, 1.0);     }     else     {       // 垂直       self.transform = CGAffineTransformScale(self.transform, 1.0, -1.0);     }   } } 

使用效果圖:

使用示例:

let imageView = UIImageView.init(frame: CGRectMake(10.0, 10.0, 60.0, 60.0)) self.view.addSubview(imageView)      imageView.image = UIImage(named: "header")      imageView.backgroundColor = UIColor.colorRandom()      imageView.left = 100.0 imageView.top = 100.0 imageView.size = CGSizeMake(100.0, 100.0)  imageView.moveToPoint(CGPointMake(100.0, 100.0)) imageView.scaleToSize(2.0)  imageView.effectViewWithAlpha(0.6)      imageView.layer(radius: 3.0, borderWidth: 1.0, borderColor: UIColor.redColor())      imageView.viewFlip(false)      imageView.viewTransformWithRotation(5.0) 

如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 嘉荫县| 新郑市| 磐安县| 杭锦后旗| 青川县| 南召县| 金寨县| 恩平市| 页游| 澎湖县| 贵州省| 丹江口市| 同仁县| 巴马| 从江县| 新田县| 武穴市| 恩平市| 天津市| 左贡县| 黄石市| 卓资县| 中江县| 葫芦岛市| 白朗县| 栖霞市| 巩留县| 凤山市| 临夏市| 科技| 清涧县| 南涧| 青田县| 潜山县| 武夷山市| 军事| 洞头县| 剑阁县| 华坪县| 麟游县| 尉犁县|