iOS截屏遇到的bug

    UIGraphicsBeginImageContextWithOptions(view.bounds.size, YES, 0);
    [view.layer renderInContext:UIGraphicsGetCurrentContext()];   //截图
    UIImage *tempImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

在本代码中,有两个需要注意的有可能关系到内存的问题

  • 内存问题,不会产生在UIGraphicsGetImageFromCurrentImageContext()这行代码中

因为UIGraphicsGetImageFromCurrentImageContext()返回的是一个autoreleaseUIImage对象

  • 一定要对应UIGraphicsBeginImageContextWithOptions()UIGraphicsEndImageContext ()

因为UIGraphicsBeginImageContextWithOptions()会在函数体内部通过
CGBitmapContetAlloc内部函数分配内存空间,而UIGraphicsEndImageContext ()的作用就是释放该空间。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 原文地址:http://www.cocoachina.com/industry/20140115/7703.htm...
    默默_David阅读 6,169评论 0 1
  • Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎。它提供了低...
    ShanJiJi阅读 1,621评论 0 20
  • OC的理解与特性 OC作为一门面向对象的语言,自然具有面向对象的语言特性:封装、继承、多态。它既具有静态语言的特性...
    小楼昨夜有风雨阅读 597评论 0 0
  • 在现在信息爆炸的时代,能否获取到关键信息显得格外的重要。打个最简单的例子,最近暴雨连绵不断,如果不能及时知道黄色警...
    扫地_阅读 338评论 0 6
  • 雨小三春暮,风轻暑气迟。 少年春去也添衣。 桐树几发新翠,孤雁倚孤亭。 绿蚁芳芬尽,青鸟报信勤。 一花开一寸柔情。...
    其为飘风阅读 354评论 0 0