Ios 拍摄屏幕截图时,内存压力警告。
如果我使用这个,就不会产生内存压力。但如果我使用线下内存,就会出现压力Ios 拍摄屏幕截图时,内存压力警告。,ios,Ios,如果我使用这个,就不会产生内存压力。但如果我使用线下内存,就会出现压力 UIGraphicsBeginImageContext(screenRect.size); 我不知道为什么会这样。。有人告诉我怎么处理吗?我不知道你说的“记忆压力”是什么意思,我想你的意思是记忆警告/崩溃。原因在于第一个示例: UIGraphicsBeginImageContextWithOptions(screenRect.size, NO, 4.0f); 您正在创建当前屏幕大小的上下文,其中使用: UIGraphic
UIGraphicsBeginImageContext(screenRect.size);
我不知道为什么会这样。。有人告诉我怎么处理吗?我不知道你说的“记忆压力”是什么意思,我想你的意思是记忆警告/崩溃。原因在于第一个示例:
UIGraphicsBeginImageContextWithOptions(screenRect.size, NO, 4.0f);
您正在创建当前屏幕大小的上下文,其中使用:
UIGraphicsBeginImageContext(screenRect.size);
您正在创建的上下文大小是当前屏幕大小的4倍,需要更多内存,如果设备没有足够的内存来分配,那么糟糕的事情就会发生
您可以使用仪器观察内存分配。产品->配置文件(⌘一) 并从模板中选择“分配”:
最后一个参数是图像比例。为什么要使用4.0的比例创建图像?@rmaddy:如果我给0,也会导致同样的问题。0表示使用当前的比例-1或2,具体取决于设备。第一种方法总是使用1的刻度。@rmaddy:我不明白,你能简单地告诉我吗。然后我需要在IOS6和IOS7中使用它。
UIGraphicsBeginImageContextWithOptions(screenRect.size, NO, 4.0f);