大家好,首先我进入了一张2900x2100的图像视图,文件大小约为4MB,我也有一个滚动视图可以在图像中移动。
无论如何它崩溃了,首先我虽然是因为4MB的大小。然后我将其调整为1287x1234和1.3MB的大小,但是当我放大太多时,它会被像素化。
之后,我设法用1.5 MB将其制作为2900x2100!所以我在我的设备上运行它,它仍然崩溃!

有人知道为什么吗?
这是我在调试器控制台上得到的


  程序接收信号:“ 0”。
  
  警告:check_safe_call:无法恢复当前帧


这是更多信息,这是我的viewDidLoad方法:


  UIImageView * tempimage = [[UIImageView分配] initWithImage:[UIImage imageNamed:@“ sanlucasFLAT.jpg”]]];
  
  self._FLatLucasImageView = tempimage;
  
  [tempimage发布];
  
  _FLatLucasImageView.frame = CGRectMake(-7,0,800,800);
  
  _FLatLucasImageView.contentMode = UIViewContentModeScaleAspectFit;
  
  _FlatLucasScrollView.contentSize = CGSizeMake(_FLatLucasImageView.frame.size.width,_FLatLucasImageView.frame.size.height);
  
  _FlatLucasScrollView.delegate =自我;
  
  _FlatLucasScrollView.clipsToBounds =是;
  
  [_FlatLucasScrollView addSubview:_FLatLucasImageView];
  
  [_FLatLucasImageView版本];


当我将CGRectMake设置为(0,0,2900,2961)时,当我滚动图像时它不会崩溃

最好的祝福

卡洛斯·瓦尔加斯(Carlos Vargas)

最佳答案

您的应用崩溃的原因是您使用的图片太大。
根据UIImage的类参考,它说您应该避免创建大小大于1024 x 1024的UIImage对象。

如果将具有大于1024 x 1024的图像的UIImage对象添加到UIImageView对象,则您的应用程序可能会崩溃。如果幸运的话,有时您的应用程序也不会崩溃。

10-07 19:54
查看更多