• MJPhotoBrowser 两个bug:回到小图模式时会闪动&大图太靠近底部


    最近项目需要写网络的相片视频浏览的库, 没时间重写,使用了MJPhotoBrowser,里面的一些bug 和解决写在下面

    1.-[MJPhotoLoadingView setProgress:]: message sent to deallocated instance 0x17fe4210

    分析:        这是由于MJPhotoView 执行了hide移除了MJPhotoLoadingView,然而SDWebimage 仍然执行了下载进度的设置。

    解决方法:最简单的是写个bool值,当响应hide的时候设置为YES,然后

      if (!hide) {
                        loading.progress = (float)receivedSize/expectedSize;
                    }

    2.点击小图进入大图模式以及回到小图模式时会闪动,动画效果不认直视

    分析 : 这主要你原本的ImageView的 contenMode 设置问题,注意如果你原来是 UIViewContentModeScaleAspectFill;

                 则MJPhotoView 的init里面也设置成这个 尔reset里面改为UIViewContentModeScaleAspectFit,UIViewContentModeScaleToFill等,若果还是闪动就多测试几次contenMode
                 如果项目中多个地方用到MJPhotoBrowser,而且原Imageview的contenModel不一样,需自己做判断


    3. 图片放大时图片太靠近底部的问题

    解决:在MJPhotoView里面加上下面代码

    - (void)scrollViewDidZoom:(UIScrollView *)scrollView {
        CGRect imageViewFrame = _imageView.frame;
        CGRect screenBounds = [UIScreen mainScreen].bounds;
        if (imageViewFrame.size.height > screenBounds.size.height)
        { imageViewFrame.origin.y = 0.0f; }
        else { imageViewFrame.origin.y = (screenBounds.size.height - imageViewFrame.size.height) / 2.0; }
        _imageView.frame = imageViewFrame;
    }

    方法来自code4app.com  : http://code4app.com/ios/%E5%BF%AB%E9%80%9F%E9%9B%86%E6%88%90%E5%9B%BE%E7%89%87%E6%B5%8F%E8%A7%88%E5%99%A8/525e06116803fa7b0a000001

  • 相关阅读:
    Eclipse将引用了第三方jar包的Java项目打包成jar文件的两种方法
    Python2.x与Python3.x的区别
    oracle锁机制
    传统解析xml的方式
    利用jdbc连接oracle数据库
    XML的解析方式(DOM、SAX、StAX)
    软件或jar包等名字里的GA意思
    windows下nginx的安装及使用
    是时候选择一款富文本编辑器了(wangEditor)
    Golang代码实现HTTPs(HTTPS证书生成和部署)
  • 原文地址:https://www.cnblogs.com/yunxinxi/p/4378238.html
Copyright © 2020-2023  润新知