场景:
1、Xcode 9.2调试真机,打包测试,或者打包上线
2、当前调试的是iOS 8.2<真机,5S> ,iOS 8.1<模拟器>的相关机型。
3、使用imageView.image = [UIImage imageNamed:@“XXXX”];
加载本地图片,并且图片存放在了 Assets.xcassets
中,会出现图片扭曲的情况。
4、iOS8.0没有尝试,但是应该也是有问题的,iOS 8.3 和iOS 8.4的设备不会出现图片扭曲的情况。
源码:
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 100, 300, 300)];
imageView.contentMode = UIViewContentModeScaleAspectFit;
imageView.image = [UIImage imageNamed:@"image"];
[self.view addSubview:imageView];
}
复制代码
来张图感受一下
正常的应该是这样的:
刚开始以为只有模拟器才会这样,但是最终试验发现。 Xcode 9.2 直接调试iOS 8.2,iOS 8.1, iOS 8.0的模拟器或者真机,Xcode9.2 打包调试,甚至是通过AppStore审核的版本,在iOS 8.2,iOS 8.1, iOS 8.0这些设备上也会中招
下面欣赏随便找的几个app的中招现象:
原因:
1、最近上线,使用最新Xcode 9.2打包上线
2、使用imageView.image = [UIImage imageNamed:@“XXXX”];
加载本地图片,并且图片存放在了 Assets.xcassets
中,会出现当前的情况
3、当前测试的版本系统为 iOS 8.2,8.1,8.0
应该是最新Xcode 9.2的bug,苹果的锅。
解决办法:
1、将本地相关的图片,不要放到Assets.xcassets
中
2、最好的解决方案,个人认为还是不要使用Xcode 9.2 打包上线,使用Xcode9.1