ViewPager嵌套PhotoView遇到的bug

2018-08-27  本文已影响0人  hudafei

log日志打印:ImageView no longer exists. You should not use this PhotoViewAttacher any more

这个问题是因为:removeView(PhotoView)时会调用PhotoView.onDetachedFromWindow()-->PhotoViewAttacher.cleanup()。在cleanup()方法中清空了PhotoViewAttacher持有的PhotoView,而在onAttachToWindow()方法中没有重置。

PhotoView常用的方法有PhotoTap和LongClick着两个,ViewPager嵌套PhotoView,难免不会左滑右滑,但是由于ViewPager也是有回收机制的,新建的子item使用不会有问题,但是再来回切换几次,PhotoTap和LongClick方法就不会起作用了,找网上的解决方法一大堆,可都不怎么实用,升级了最新的版本库叶没有解决。

解决方法:

在ViewPager切换的方法里面重新获取PhotoView对象,调用PhotoTap和LongClick方法。

上一篇下一篇

猜你喜欢

热点阅读