ios应用屏幕兼容问题

在 ipone 4s  以前,我们好像没有过多的考虑屏幕兼容的问题,因为iphone 智能的帮我们解决了,

比如说  iphone  iphone 3g  iphone 3gs  为  320 *480

             iphone 4  iphone 4s  为  640 *960

我们很多情况下就是提供一个 [email protected],如果是Retina屏幕,iphone为自己选择现实@2x 的图片。


而iphone 5 为  640 *1136    比 4 和4s 高了  176像素。

如果我们考虑屏幕兼容,我们可以这样


1判断是否 iphone 5,如果是5的话,我们做一些特殊的处理,比如说如果是5的话我们把视图的尺寸增大等

#define isIPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ?

CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO)


2 直接用比例,在设置尺寸的时候我们不把数据写死,只是提供一些比例。
#define ScreenHeight [[UIScreen mainScreen] bounds].size.height
#define ScreenWidth [[UIScreen mainScreen] bounds].size.width
#define StateBarHeight 20
#define MainHeight (ScreenHeight - StateBarHeight)
#define MainWidth ScreenWidth



3  autoLayout

这个不说了


4  如果有xib文件,我们可以针对不同的情况,新建多个xib文件。比如说一些很复杂的布局,我们可能要建1个 水平的,1个垂直的,一个针对5的xib。



你可能感兴趣的:(ios应用屏幕兼容问题)