博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
swift关于UIView设置frame值的extension
阅读量:6396 次
发布时间:2019-06-23

本文共 2919 字,大约阅读时间需要 9 分钟。

swift关于UIView设置frame值的extension

 

使用

 

说明

1. 使用如上图,很简单,不再赘述

2. 在extension给添加的计算属性提供getter,setter方法即可

 

源码

////  UIView+SetRect.swift//  YouXianMing////  Created by YouXianMing on 15/9/29.//  Copyright © 2015年 YouXianMing All rights reserved.//import UIKitextension UIView {    // x    var x : CGFloat {                get {                        return frame.origin.x        }                set(newVal) {                    var tmpFrame : CGRect = frame            tmpFrame.origin.x     = newVal            frame                 = tmpFrame        }    }        // y    var y : CGFloat {                get {                        return frame.origin.y        }                set(newVal) {                        var tmpFrame : CGRect = frame            tmpFrame.origin.y     = newVal            frame                 = tmpFrame        }    }        // height    var height : CGFloat {                get {                        return frame.size.height        }                set(newVal) {                        var tmpFrame : CGRect = frame            tmpFrame.size.height  = newVal            frame                 = tmpFrame        }    }        // width    var width : CGFloat {                get {                        return frame.size.width        }                set(newVal) {                        var tmpFrame : CGRect = frame            tmpFrame.size.width   = newVal            frame                 = tmpFrame        }    }        // left    var left : CGFloat {            get {                        return x        }                set(newVal) {                        x = newVal        }    }        // right    var right : CGFloat {            get {                        return x + width        }                set(newVal) {                        x = newVal - width        }    }        // top    var top : CGFloat {            get {                        return y        }                set(newVal) {                        y = newVal        }    }        // bottom    var bottom : CGFloat {            get {                        return y + height        }                set(newVal) {                        y = newVal - height        }    }        var centerX : CGFloat {            get {                        return center.x        }                set(newVal) {                        center = CGPoint(x: newVal, y: center.y)        }    }        var centerY : CGFloat {            get {                        return center.y        }                set(newVal) {                        center = CGPoint(x: center.x, y: newVal)        }    }        var middleX : CGFloat {            get {                        return width / 2        }    }        var middleY : CGFloat {                get {                        return height / 2        }    }        var middlePoint : CGPoint {            get {                       return CGPoint(x: middleX, y: middleY)        }    }}

转载地址:http://fumha.baihongyu.com/

你可能感兴趣的文章
linux笔记之进程信息查看工具
查看>>
django 自定义分页器
查看>>
Oracle命令
查看>>
转载-没有IE就没有伤害!浏览器兼容性问题解决方案汇总
查看>>
常用 tcpdump 抓包方式
查看>>
Geek's Collection(幂运算)
查看>>
easy bootstrap模板
查看>>
Hdu 4734-F(x) 数位dp
查看>>
DRUID连接池的实用 配置详解
查看>>
html&css精华总结
查看>>
ImportError: No module named tornado.ioloop 记录过程
查看>>
hihocoder [Offer收割]编程练习赛14 小Hi和小Ho的礼物
查看>>
JQuery EasyUI 动态改变表单项的验证守则
查看>>
iOS开发设置View某个角为圆角
查看>>
【python】python path,macports,easy-install,numpy,scipy,ipython,matplotlib,集成工具...
查看>>
学习进度总结
查看>>
ACCESS模糊查询出现"内存溢出"原因是日文片假名
查看>>
Error setting expression 'XXX' with value 设置表达式“XXX”时出错 解决方法
查看>>
javascript获取url参数和script标签中获取url参数
查看>>
CF359D:Pair of Numbers(数论)
查看>>