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的更多相关文章

  1. swift为UIView添加extension扩展frame

    添加swift file:UIView+Extension import UIKit extension UIView { // x var x : CGFloat { get { return fr ...

  2. Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数

    Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 7.4.4  为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1 ...

  3. swift - UIView 设置背景色和背景图片

    代码如下: let page = UIView() page.frame = self.view.bounds //直接设置颜色 page.backgroundColor = UIColor.gree ...

  4. UIView 中 frame, bounds, center 属性的关系

    最近一直在学 iOS 开发,所以专门创建了这样一个类别,将自己学习中的一些问题整理,记录下来.由于自己是初学者,所以所写的文章非常基础,写这个类别一是为了给自己留下存 档,二是为了给和我有同样问题的初 ...

  5. 便利的初始化view以及设置tag值

    便利的初始化view以及设置tag值 效果 源码 https://github.com/YouXianMing/iOS-Project-Examples 中的 SetRect // // Access ...

  6. CALayer的position,anchorPoint属性 与UIView的frame 属性

    彻底理解CALayer的position,anchorPoint属性 与UIView的frame 属性 一.position,anchorPoint两者都是CALayer的属性,都是CGPoint点 ...

  7. iOS UIView设置圆角

    UIView设置圆角 1.比较简单的情况,UIView四个角都是圆角: UIView *aView = [[UIView alloc] init]; aView.frame = CGRectMake( ...

  8. UIView的frame和bounds区别

    UIView的frame和bounds区别 iOS中,大家肯定对view和frame都不陌生,我们设置view在父view中的位置和大小时,只需要设置frame就可以了. 可能大家也有查过网上的一些资 ...

  9. [UIKit学习]01.关于UIView,frame,bounds,center

    UIView是Cocoa大多控件的父类,本身不带事件. UIView的常见用法 @property(nonatomic,readonly) UIView *superview; 获得自己的父控件对象 ...

随机推荐

  1. 数据库-SQLite简介

    SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库(轻型数据库). 由于资源占用少.性能良好和零管理成本,嵌入式数据库有了它的用武之地,像Android.iPhone都有内置的S ...

  2. Python虚拟环境中pip install时没有权限问题

    virtualenv Permission denied 新建的python虚拟环境的目录的所属者必须是当前用户,才不会出现这种错误 比如 virtualenv py27 sudo chown zzf ...

  3. ssh和ssh-copy-id以及批量多机无密码登陆详解

    本文主要围绕着ssh服务以及如何通过ssh-copy-id实现无密码登陆. 1. sshd 服务以及配置   2.ssh-copy-id命令的使用以及原理.3.批量多机互相信任. 1. sshd 服务 ...

  4. 编程开发(C/C++&Java&Python&JavaScript&Go&PHP&Ruby&Perl&R&Erlang)

    使用Docker快速部署主流编程语言的开发.编译环境及其常用框架,包括C.C++.Java.Python.JavaScript.Go.PHP.Ruby.Perl.R.Erlang等. 在今后采用编程语 ...

  5. css 去除移动端手指按下瞬间的类hover色块

    在指定的a或者button  设置此CSS -webkit-tap-highlight-color:transparent;

  6. VM CentOS 问题汇总

    1. 锁定文件失败 / 模块启动失败 如下图问题: 原因分析: 虚拟机为了防止有多虚拟机共用一个虚拟磁盘(就是后 缀为.vmdk那个文件)造成数据的丢失等问题,每次启动虚拟机时会给每个虚拟磁盘加一个磁 ...

  7. autofac使用Common Serivce Locator跟随wcf,mvc,web api的实例控制

    autofac本身只提供了基本的ioc容器的功能 要想在mvc,wcf,web api中使用,除了autofac本身,还需要引入对应的包(点击对应连接可查看文档) 除此之外,使用Common Serv ...

  8. 入门redis

    学习了大佬的博客,来源自:https://www.cnblogs.com/5ishare/p/6280023.html 一.下载 https://github.com/ServiceStack/red ...

  9. Mac下显示和隐藏隐藏文件的命令

    打开终端,输入: 1.defaults write com.apple.finder AppleShowAllFiles -bool true 此命令显示隐藏文件defaults write com. ...

  10. 【转】启动tomcat的时候一直卡在INFO: Deploying web application

    在用centos7.+不熟tomcat项目的时候,启动时突然很奇怪的没报错,但是又访问不了网址,调用./shutdown.sh又结束不了,一直出现: java.net.ConnectException ...