Closed doubleDragon closed 8 years ago
这个跟进貌似一直走到系统的Interpolator里…
private Animator createAnimatorIn(Context context) {
Animator animatorIn;
if (mAnimatorReverseResId == 0) {
animatorIn = AnimatorInflater.loadAnimator(context, mAnimatorResId);
animatorIn.setInterpolator(new ReverseInterpolator());
} else {
animatorIn = AnimatorInflater.loadAnimator(context, mAnimatorReverseResId);
}
return animatorIn;
}
问题是出在这个ReverseInterpolator上,当界面finish的时候,持有了Context引用,这个我在其他机型上测试没有发现,只在一加的手机上出现了。
抱歉我没有一加手机来测试。 你可以试试在 View 的 onDetachedFromWindow 时把相关的 Animator 和 Interpolator 回收
LoopViewPager 滑动几页后手机会卡死。小米4,nexus 5 所有手机都是
@smallgirl 你是运行Sample里的LoopViewPager会卡死吗? 刚好有台 Nexus 5,但没有复现。
LoopViewPager 这个 快速滑动几页,我的nexus是6.01的系统 小米4是5.0的系统,就是滑到边缘的时候 会滑不动,或者出现下个页面的半屏幕 卡着。
@ongakuer 快速滑动 向右面滑动5-10个循环,然后向左滑动,没出现的话,再向右滑动
@smallgirl 复现了,你这是滑的速度实在有点夸张…在头尾替换的时候如果快速滑动会卡。这个是 LoopViewPager 的问题。
不只是速度的问题,滑到一定页数后,在往回慢滑动 也会卡,确实是LoopViewPager 的问题,循环viewpager的实现方式很多,自定view group 或者viewpager的adapter返回Integer.MAX_VALUE
恩,用LoopViewPager因为使用的人多。而且对外的暴露的数据是正确的。
在项目中LeakCanary检测了内存泄露 使用场景:CircleIndicator搭配ViewPager作为RecyclerView的一个Item
In com.qingsongchou.social:1.0.3:1.