简述控件约束的三种形式<一>
来源:互联网 发布:coc狗升级数据 编辑:程序博客网 时间:2024/06/06 01:38
我是iOS开发,布局界面,适配不同尺寸的屏幕,就要对控件进行约束。我觉得约束的核心,即是相对布局控件。在我的实战经验中,将约束控件分为三种类型实现。各有使用场景,结合需要和自己的喜好使用。
第一种类型是:xib控件约束,通常将xib约束分为三种形式描述。
第一形式是:是autoSizing。也许会说,这都是过去式的东西了,为什么还要拿出来说。如果你所在的团队负责的项目是很早就上线,直到现在都在不断版本更新,那么,就可能存在一些很早创建类自带的xib文件是通过autoSize进行约束的。所以,了解一些,仍是有帮助的。
左图一,是开关部分。不勾选,即是autoSizing。 右图二,是约束操作部分。通过图标出的六根线来设置约束。右边的小红色区域,为约束设置后的效果图。
左图一 右图二
第二种形式是:autoLayout。将上述左图一的use Auto Layout 勾选上。左图三给出设置约束的工具。从右向左,第一个是Ressolve Auto Layout Issue,点击可以弹出一个框,框内上半部分为当前选中控件的约束操作。下半部分是对整个xib中控件的约束操作。第二个是Pin,弹出一个浮框,可对当前选中控件设置约束。第三个是Align,点击弹出一个浮框,对当前选中控件进行对齐约束。如水平对齐,垂直对齐等。其中,当前选中的控件,可以是一个,也可以是二个或以上。
左图三
左图四,是约束效果图,可查看对控件设置了那些约束。左图五,是约束包。和xib中控件的约束线是一一对应的。结合图四和图五,方便查找xib中控件的约束。
左图四 右图五
需要注意的是:点击Pin工具,设置当前选中控件的约束时,可能会出现左图六的现象,明明控件左右约束设置为0,但查看控件的左右离屏幕仍有间距。待程序运行起来后,发现间距还在。我最后发现,间距的来源是:在点击Pin工具,对控件的上下左右设置约束时,有一个选框,自动勾上了。去掉就可以了。如右图六。
左图五。 右图六
第三种形式,是sizeClass,最大的特点是,适配不分屏幕尺寸,只有大小屏的概念。目前,我在开发中没有用到,仅有理论上的理解。如需深入了解,请参考其他资料。
另外,两种控件的约束类型为:masonry类为纯代码布局提供约束, 和frame。后续~
- 简述控件约束的三种形式<一>
- 简述控件约束的三种形式<二>
- 外键约束三种形式
- 简述自定义控件(一)
- 简述会话劫持攻击的两种形式
- 语句的三种形式
- 面试的三种形式
- 简述vc里响应button控件的lbuttondown事件的三种方法
- My SQL为列增加约束的几种形式
- android 自定义控件基础之三种约束类型
- C++的三种继承方式简述
- Java的三种代理模式简述
- android 自定义控件的几种形式
- Java精度的三种形式
- Ajax输出的三种形式
- linux密码的三种形式
- main函数的三种参数形式
- 个人博客存在的三种形式
- 关于jdk的问题
- VMware局域网访问远程虚拟机
- android之刮刮卡中奖效果PorterDuffXfermode与paint属性详解
- 提取CD音频文件
- eclipse搭建mvn web工程
- 简述控件约束的三种形式<一>
- iOS开发:NSURLSession和Afnetworking的使用对比
- centos安装php扩展mcrypt
- java synchronized详解
- CentOS影响java的线程数的因素
- Maven学习笔记
- linux下SSH攻击解决方法
- 遇到Beyond Compare乱码问题可以这样解决
- 工作、学习、生活