图片的屏幕适配

  • 广告界面的最底层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, 则该图片不会被打包到程序中.

results matching ""

    No results matching ""