美文网首页iOS锦囊
collectionView/TableView视图颤抖

collectionView/TableView视图颤抖

作者: 片片碎 | 来源:发表于2018-01-26 18:06 被阅读9次

    问题:

    当VC1 push到VC2, 再pop回到VC1后

    VC1上的cell (cell上就是个image)视图会抖动

    VC1: 上面是个collectionView,cell上就是个image

    排查:

    1)开始以为是collectionView复用问题导致的,但是排查复查没有问题

    collectionView四种创建方法:http://blog.csdn.net/ZC_Huang/article/details/52002302

    2)collectionView隐式动画引起,去掉隐藏动画,但是还是不行

    取消UICollectionView的隐式动画:http://www.cocoachina.com/ios/20151113/14211.html

    3)图片太大,引起,这是正解

    解决方法:因为服务器端暂时不提供缩略图,只有大图,所以移动端自己压缩图片大小

    https://www.jianshu.com/p/99c3e6a6c033


    实现方法:

    -(UIImage *)compressImageQuality:(UIImage *)image{

        //压缩比列大小,比列压缩成宽 144 高 81

        CGSize size = {144,81};

        UIGraphicsBeginImageContext(size);

        [image drawInRect:CGRectMake(0, 0, size.width, size.height)];

        image = UIGraphicsGetImageFromCurrentImageContext();

        UIGraphicsEndImageContext();

        //压缩图片大小 compression是压缩大小 ,范围为0.0-1.0  值越小压缩又厉害,图片大小越小 同时质量越差越模糊

        CGFloat compression = 0.8;

        NSData *data = UIImageJPEGRepresentation(image, compression);//可以循环多压缩几次

        UIImage *resultImage = [UIImage imageWithData:data];

        return resultImage;

    }

    相关文章

      网友评论

        本文标题:collectionView/TableView视图颤抖

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