Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 拍摄屏幕截图时,内存压力警告。_Ios - Fatal编程技术网

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);