2016.01.14 Auto Layout
2016-01-18 21:14
190 查看
随着iPhone6/6+设备的上市,如何让手头上的APP适配多种机型多种屏幕尺寸变得尤为迫切和必要。
在iPhone6出现以前,我们接触的iPhone屏幕只有两种尺寸:320 x 480和320 x 568。所以在那个时候使用传统的绝对定位(Frame)方式进行界面控件的布局还是比较轻松的,因为我们只需要稍微调整一下Frame就可以适配这两种大小的屏幕了。也许这也是为什么虽然AutoLayout从IOS6就已经出现了,但是对于AutoLayout的使用和普及好像都不怎么火热。不过直到最近随着iPhone6/6+设备的出现,AutoLayout又被众多开发者重新审视和重视了。毕竟APPLE推出AutoLayout就是为了帮助开发者的APP更方便简单的适配将来不同苹果设备的不同大小屏幕。
Xcode为我们提供了Auto Layout系统。但是这里需要先说几个关键字:
基于约束 - 和以往定义frame的位置和尺寸不同,AutoLayout的位置确定是以所谓相对位置的约束来定义的,比如x坐标为superView的中心,y坐标为屏幕底部上方10像素等,每个控件都需要四个约束。
描述性 - 约束的定义和各个view的关系使用接近自然语言或者可视化语言(稍后会提到)的方法来进行描述。
布局系统 - 即字面意思,用来负责界面的各个元素的位置。
storyboard
1.这个位置选适应什么样子的屏幕
2.两种方法选择约束
第一种:
第二种:
code
在使用code的时候,用系统自带的方式会特别麻烦。所以我们引用第三方库——Masnory,Masonry的github地址:https://github.com/SnapKit/Masonry
在iPhone6出现以前,我们接触的iPhone屏幕只有两种尺寸:320 x 480和320 x 568。所以在那个时候使用传统的绝对定位(Frame)方式进行界面控件的布局还是比较轻松的,因为我们只需要稍微调整一下Frame就可以适配这两种大小的屏幕了。也许这也是为什么虽然AutoLayout从IOS6就已经出现了,但是对于AutoLayout的使用和普及好像都不怎么火热。不过直到最近随着iPhone6/6+设备的出现,AutoLayout又被众多开发者重新审视和重视了。毕竟APPLE推出AutoLayout就是为了帮助开发者的APP更方便简单的适配将来不同苹果设备的不同大小屏幕。
Xcode为我们提供了Auto Layout系统。但是这里需要先说几个关键字:
基于约束 - 和以往定义frame的位置和尺寸不同,AutoLayout的位置确定是以所谓相对位置的约束来定义的,比如x坐标为superView的中心,y坐标为屏幕底部上方10像素等,每个控件都需要四个约束。
描述性 - 约束的定义和各个view的关系使用接近自然语言或者可视化语言(稍后会提到)的方法来进行描述。
布局系统 - 即字面意思,用来负责界面的各个元素的位置。
storyboard
1.这个位置选适应什么样子的屏幕
2.两种方法选择约束
第一种:
第二种:
code
在使用code的时候,用系统自带的方式会特别麻烦。所以我们引用第三方库——Masnory,Masonry的github地址:https://github.com/SnapKit/Masonry
[objc] view plaincopy
相关文章推荐
- Halcon/MFC混合编程入门
- xml命名空间分析
- Collection和Collections区别
- 极限优化:Haar特征的另一种的快速计算方法—boxfilter
- 【Apache运维基础(3)】虚拟主机配置说明
- C#中直接操作内存的方法
- asp.net 中 用户控件
- Windows系统下通过SecureCR搭建SSH2连接到Linux服务器
- PCL—低层次视觉—点云滤波(初步处理)
- Symmetric Tree leetcode
- OpenSSL
- errorlevel与%errorlevel%的区别
- HDU 1081 最大子矩阵(LCS_DP+前缀和)
- PHP中递归函数的一个常见逻辑问题
- 20160115广州MVP线下聚会
- 20160115广州MVP线下聚会
- 20160115广州MVP线下聚会
- 子网划分
- LeetCode Find Peak Element
- python实现找到第i小的元素