【屏幕适配发展介绍 Objective-C语言】

一、接下来,我们花一天时间,给大家介绍这个屏幕适配

通知

1.那么,屏幕适配,是什么意思啊

我们说,写程序的时候,我们有时候要做

1)系统适配

2)屏幕适配

1)系统适配:是指的你写的这个代码,在iOS6、iOS7、iOS8,在不同的iOS系统下,是不是运行的效果,一致吧

这个指的是系统适配

因为,在iOS6、iOS7、iOS8,具体的不同系统下,有时候,代码会有一些小的区别

所以说,我们为了保证,你写的代码,在不同的系统下,运行效果都是一致的,所以,我们写完那个代码以后,要测试iOS6、iOS7、iOS8,那么当然最新的,苹果一般都推荐,是不是只适配两个系统

最近的两个版本,iOS7、iOS8

那么,这个是做系统的适配

那么,同样比如说是运行的iOS8系统,有可能你用的是iPhone4S、有可能是iPhone5、iPhone5S、iPhone6、iPhone6Plus

是不是都有可能啊

这就是,同样一个iOS系统,操作系统不变,但是是不是用在了不同的设备上

那么还有可能是iPad吧

不同的设备,有可能屏幕大小不一样

1)iPhone4S:3.5英寸

2)iPhone5S:4英寸

3)iPhone6:4.7英寸

4)iPhone6Plus:5.5英寸

5)iPad:等等

那么,当它运行在不同的设备上的时候,屏幕大小是不是不一样

那么,既然屏幕大小不一样,我们之前写代码的时候,是不是一直都是把frame、元素的坐标写死啊

比如说,按钮距离左边20、距离上边20、

那么,永远是不是都是写死了

这样的话,这个按钮,不论是在4英寸下的、3.5英寸下的

4.7英寸下的、5.5英寸下的

还是iPad下

它是不是都是显示在(20,20)那个点的位置

但是,有时候,我们不想让它这么做

我们希望它,就是在不同的屏幕下以后,是不是显示在那个相对位置吧

就是,比如说,无论在什么屏幕下

都相对最上边20个点,相对最左边20个点

或者说,无论在什么情况下,你都是相对两个控件之间,保持一定的间距

这个间距是不变的

那么,也就是说,等会儿给大家看一下就知道了

如果我们写代码的时候,把空间的frame,坐标写死了,写成具体的点

这个时候,在不同的屏幕下,展示,有可能会出现很大的问题

那么,我们屏幕适配的作用,就是为了让我们把UI控件上的布局做好了以后,无论它是在iPhone什么样的屏幕上,还是在iPad下,竖屏下,还是在横屏下,

都能正常去显示

那么,我们只要把UI控件布局好,只要布局一次

布局好以后,无论你手机是横屏、竖屏、还是3.5英寸、4.7英寸,还是iPad,各种,在所有设备下,展示效果都是正常的

都是正确的,这就是我们屏幕适配的目的

其实,今天就一个知识点,就是这个Autolayout-自动布局

通知
通知

那么,在继续之前,还是先把这个知识点给大家过一下

3.我们iPhone的屏幕发展过程,大致就是经历四个过程

1)第一个过程:就是不需要屏幕适配,为什么,一开始iPhone是不是只有一个尺寸,3.5英寸,

通知

那么这个时候,我们写代码的时候,我们可以把控件的frame、坐标、大小都写死,就OK了

并且,一开始iPhone程序,是不存在横屏、竖屏的问题

如果这个应用程序是横屏,那么,只能在横屏下运行,

如果这个应用程序是竖屏,那么,只能在竖屏下运行,

一开始,不存在竖屏,颠倒过来变成横屏的效果吧

我们就直接为frame设置一个坐标,我们这个时候,把它叫做MagicNumber

什么叫MagicNumber,你在程序代码里面,直接出现了一个数字,比如说是控件“点”frame = CGRectMake(20,30,20,100);

这种数字,就叫MagicNumber

为什么,这个数字,别人谁都不知道它什么意思啊

至少你要使用一个有意义的变量来保存啊

所以说,不要在写代码里面,直接出现数字

至少要把数字,放到一个变量里面

然后,在后面赋值变量

不要直接写个数字

一开始的时候,我们直接为frame写大小,可以用这个MagicNumber都没有问题

在iPhone3GS、iPhone4、iPhone4S,屏幕物理尺寸都是3.5英寸,根本就不需要进行屏幕适配

猜你喜欢

转载自blog.csdn.net/madoca/article/details/131979181
今日推荐