关于viewPager使用灵敏度调节问题,类似抖音功能的实现

因为需求是需要做一个类似抖音的上下滑动的播放视频的功能,功能很好实现。但是主要问题是在与Android9.0的手机上,ViewPager上下滑动很卡顿,需要拉伸到很长才会加载下一页。
网上目前也有很多类似调整灵敏度的博客,但是都其实不好用,或者说都不符合我的需求。但是其实大体意思都相同的。有一些是通过反射修改viewpager的私有属性mMinimumVelocitymFlingDistance,改变他们的值,但是没有效果,所以不用去试了。
我的具体思路其实差不多,viewpagewr的滑动其实调用的是determineTargetPage方法,源码是这样的:

private int determineTargetPage(int currentPage, float pageOffset, int velocity, int deltaX) {
        int targetPage;
        if (Math.abs(deltaX) > mFlingDistance && Math.abs(velocity) > mMinimumVelocity) {
            targetPage = velocity > 0 ? currentPage : currentPage + 1;
        } else {
            final float truncator = currentPage >= mCurItem ? 0.4f : 0.6f;
            targetPage = currentPage + (int) (pageOffset + truncator);
        }

        if (mItems.size() > 0) {
            final ItemInfo firstItem = mItems.get(0);
            final ItemInfo lastItem = mItems.get(mItems.size() - 1);

            // 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值