iOS截屏遇到的bug

作者: 肖浩呗 | 来源:发表于2016-08-10 21:15 被阅读346次
        UIGraphicsBeginImageContextWithOptions(view.bounds.size, YES, 0);
        [view.layer renderInContext:UIGraphicsGetCurrentContext()];   //截图
        UIImage *tempImage = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();
    

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

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

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

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

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

    相关文章

      网友评论

      本文标题:iOS截屏遇到的bug

      本文链接:https://www.haomeiwen.com/subject/xgpjsttx.html