图片的屏幕适配
- 广告界面的最底层view显示为启动图片,是为了让用户有错觉以为程序还在启动过程中
- 启动图片有好多种, 分别对应不同尺寸的屏幕, 那么广告界面的luanchImageView可以直接加载图片名片吗?
- 不可以, 否则会出现bug:启动图片被拉伸了

- 要解决这种bug, 就需要对图片做一个屏幕适配
- iPhone现阶段的屏幕有4种:5.5吋, 4.7吋, 4吋, 3.5吋, 要做到屏幕适配, 可以定义一个宏来确定不同屏幕尺寸的点坐标高度, 来跟当前的屏幕点坐标高度做比较. 根据屏幕的高度判断当前设备
#define CDHiPhone6P (CDHScreenH == 736)
#define CDHiPhone6 (CDHScreenH == 667)
#define CDHiPhone5 (CDHScreenH == 568)
#define CDHiPhone4 (CDHScreenH == 480)
- (void)setupLuanchImage {
UIImage *luanchImage = nil;
if (CDHiPhone6P) {
luanchImage = [UIImage imageNamed:@"[email protected]"];
} else if(CDHiPhone6) {
luanchImage = [UIImage imageNamed:@"LaunchImage-800-667h.png"];
} else if(CDHiPhone5) {
luanchImage = [UIImage imageNamed:@"LaunchImage-568h.png"];
}else if(CDHiPhone4) {
luanchImage = [UIImage imageNamed:@"LaunchImage.png"];
}
_luanchImageView.image = luanchImage;
}
- 这里可能会遇到以下问题,就是 Assets.xcassets 文件夹里面的Brand Assets 的启动图片敲不出来, 可以直接把图片拉进程序,同样可以加载到图片
- 注意点: 如果启动图片文件夹中的图片为unassigned, 则该图片不会被打包到程序中.