有很多项目都没有做适配,怎么做适配那。
(1)判断是否做了适配
首先看看你的启动页有几张图片吧
这样就是适配所有机型。
但是打开页面你可能就会发现,应用各种变形了。
(2)怎么适配
(1)打开每个 StoryBoard 和 xib 文件 是否做了约束,没做的话每个都加上约束
。
(2)代码里还有这样的代码有的话就不会适配
self.view.frame=CGRectMake(0, 0, 320, 40);
【代码适配方法一】用屏幕的尺寸来适配
self.view.frame=CGRectMake(0, 0, ScreenWidth, ScreenHeight);
附上一些适配用到的宏定义 判断屏幕尺寸 来改变文字,图片大小
#define ISIPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO)
#define ISIPhone6 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(750, 1334), [[UIScreen mainScreen] currentMode].size) : NO)
#define ISIPhone6Plus ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2208), [[UIScreen mainScreen] currentMode].size) : NO)
#define ISIPhone4 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)
#define ScreenWidth [[UIScreen mainScreen]bounds].size.width
#define ScreenHeight [[UIScreen mainScreen]bounds].size.height
【代码适配方法二】autoLayout代码 /Masary
autoLayout代码约束太复杂。
有大神封装了Masary这个约束库可以用
Masary下载地址