swift关于UIView设置frame值的extension
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 UIKit extension 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 /
}
} var middleY : CGFloat { get { return height /
}
} var middlePoint : CGPoint { get { return CGPoint(x: middleX, y: middleY)
}
}
}
swift关于UIView设置frame值的extension的更多相关文章
- swift为UIView添加extension扩展frame
添加swift file:UIView+Extension import UIKit extension UIView { // x var x : CGFloat { get { return fr ...
- Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数
Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 7.4.4 为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1 ...
- swift - UIView 设置背景色和背景图片
代码如下: let page = UIView() page.frame = self.view.bounds //直接设置颜色 page.backgroundColor = UIColor.gree ...
- UIView 中 frame, bounds, center 属性的关系
最近一直在学 iOS 开发,所以专门创建了这样一个类别,将自己学习中的一些问题整理,记录下来.由于自己是初学者,所以所写的文章非常基础,写这个类别一是为了给自己留下存 档,二是为了给和我有同样问题的初 ...
- 便利的初始化view以及设置tag值
便利的初始化view以及设置tag值 效果 源码 https://github.com/YouXianMing/iOS-Project-Examples 中的 SetRect // // Access ...
- CALayer的position,anchorPoint属性 与UIView的frame 属性
彻底理解CALayer的position,anchorPoint属性 与UIView的frame 属性 一.position,anchorPoint两者都是CALayer的属性,都是CGPoint点 ...
- iOS UIView设置圆角
UIView设置圆角 1.比较简单的情况,UIView四个角都是圆角: UIView *aView = [[UIView alloc] init]; aView.frame = CGRectMake( ...
- UIView的frame和bounds区别
UIView的frame和bounds区别 iOS中,大家肯定对view和frame都不陌生,我们设置view在父view中的位置和大小时,只需要设置frame就可以了. 可能大家也有查过网上的一些资 ...
- [UIKit学习]01.关于UIView,frame,bounds,center
UIView是Cocoa大多控件的父类,本身不带事件. UIView的常见用法 @property(nonatomic,readonly) UIView *superview; 获得自己的父控件对象 ...
随机推荐
- springboot-5-整合jpa
######## ##springboot-parent.version: ## jdk 1.8 ## ####### 在整合jpa之前, 先说下mysql 步骤: 1), 在application. ...
- PTA (Advanced Level) 1024 Palindromic Number
Palindromic Number A number that will be the same when it is written forwards or backwards is known ...
- Go RabbitMQ (一)
RabbitMQ 简介 RabbitMQ是一个消息代理,用来负责接收和转发消息. 术语 生产者:生产者是负责发送消息的 队列:队列是RabbitMQ用来存储消息的,受主机内存和磁盘大小的限制,本质上是 ...
- IOS开发常见第三方总结
链接](https://github.com/languages/Objective-C/most_watched) * [three20](https://github.com/facebook ...
- C# 从Excel 批量导入数据库
最近遇到了关于 C# MVC 批量添加数据的问题,解决后就自己写了一个未完成的小Demo 不管什么编程语言都会提供操作Excel文件的方式,C#操作Excel主要有以下几种方式: 1.Excel 说 ...
- BG.VM--CentOS
1. CentOS 更改IP 局域网配置: 在虚拟机的[网络]连接方式中选择:仅主机(Host-Only)网络. 路径:vim /etc/sysconfig/network-scripts/ifcfg ...
- win10 uwp unix timestamp 时间戳 转 DateTime
有时候需要把网络的 unix timestamp 转为 C# 的 DateTime ,在 UWP 可以如何转换? 转换函数可以使用下面的代码 private static DateTime UnixT ...
- 面试7 GC机制中如何判断一个对象是否任在使用
GC 通过在使用的根引用遍历所有引用的对象实例,当一个对象不能被遍历时,将被视为不能被使用.
- GC详解及Minor GC和Full GC触发条件总结
GC,即就是Java垃圾回收机制.目前主流的JVM(HotSpot)采用的是分代收集算法.与C++不同的是,Java采用的是类似于树形结构的可达性分析法来判断对象是否还存在引用.即:从gcroot开始 ...
- 将windows共享文件夹挂载在linux机器的/mnt/windows/ 目录下进行访问
将windows共享文件夹挂载在linux机器的/mnt/windows/ 目录下进行访问.windows机器ip:192.168.1.101,用户名:XXXX密码:XXXXlinux机器ip:ip2 ...