屏幕适配
2016-07-21 17:28
204 查看
适配是项目中,为了让App适应iPhone5/6/6s三种不同的屏幕尺寸。
iPhone4之后采用的是Retina显示屏,物理尺寸不变,但是像素成倍增加。point即是点,一个点等于两像素。
在设置图片的时候 x.png、x@2x.png、x@3x.png 可以很好的搞定图片像素问题。
使用Asset Catalogs,xcode会根据屏幕拉伸图片,基本上只要填充一张图,就可以匹配所有。但是值得注意的是,iOS7中没有三倍图的概念,所以在iOS7上的工程在Asset Catalogs应该尽量设置1x或者2x图,不然有可能有图片不能显示的问题。
在绘制UI上有两种方法,一是用frame,二是用autolayout。前者是绝对定位,后者是相对定位。实际上是一样的,但是不得不提的是使用autolayout的绘制方法更加省力。
frame绘制界面,一般固定了控件的XY坐标和宽高,在设定方面需要自己去计算,而且绘制之后若没有重新赋值,控件的坐标和大小就是被固定住了。
autolayout绘制界面时是给控件设定相对于哪个控件的相对位置。使用autolayout设置之后,控件在横竖屏、大小屏上能通过相对位置来设定自身的位置和大小,从而达成适配的真正意义。
iPhone4之后采用的是Retina显示屏,物理尺寸不变,但是像素成倍增加。point即是点,一个点等于两像素。
在设置图片的时候 x.png、x@2x.png、x@3x.png 可以很好的搞定图片像素问题。
使用Asset Catalogs,xcode会根据屏幕拉伸图片,基本上只要填充一张图,就可以匹配所有。但是值得注意的是,iOS7中没有三倍图的概念,所以在iOS7上的工程在Asset Catalogs应该尽量设置1x或者2x图,不然有可能有图片不能显示的问题。
在绘制UI上有两种方法,一是用frame,二是用autolayout。前者是绝对定位,后者是相对定位。实际上是一样的,但是不得不提的是使用autolayout的绘制方法更加省力。
frame绘制界面,一般固定了控件的XY坐标和宽高,在设定方面需要自己去计算,而且绘制之后若没有重新赋值,控件的坐标和大小就是被固定住了。
autolayout绘制界面时是给控件设定相对于哪个控件的相对位置。使用autolayout设置之后,控件在横竖屏、大小屏上能通过相对位置来设定自身的位置和大小,从而达成适配的真正意义。
相关文章推荐
- android 黑名单 短信拦截
- 隐藏title,requestWindowFeature(Window.FEATURE_NO_TITLE);失效
- Java类加载器总结
- HDU 1969 PIE
- BootStrap 折叠框
- c# 面向方面编程
- 为何要有内部接口
- 无敌获取控制器
- 编程小程序:1.编写程序,每次程序运行,产生5组双色球号码。每组号码升序排列,至少写出三种排序方法。
- oracle with as用法
- JS和CSS互动
- 委托及多播委托
- 逆向分析isKindOfClass 内部实现
- 利用Python实现选择排序
- css中的float知识点总结
- 出现Error: could not find java 2 Runtime Environment错误的处理!!
- ffmpeg 捕获屏幕和采集声卡、摄像头、麦克风声音
- MySQL存储引擎中的MyISAM和InnoDB区别详解
- 推荐系统 - 3 - 协同过滤算法、随机游走算法
- python学习