【问题标题】:Stopping ViewPager AutoScroll onPause of the Activity停止 ViewPager AutoScroll onPause of Activity
【发布时间】:2017-05-29 05:42:25
【问题描述】:

我有一个活动,我有一个 recyclerView。在那个 recyclerView 中,我正在加载一张卡片列表。每张卡片都是一个带有不同图像的 viewPager。我也在自动滚动图像。

现在,我想停止该活动的 autoScroll onPause。

private void loadViewPagerAdapter(final AutoScrollViewPager viewPager, final ArrayList<String> imageData, final int pos) {
        ImageCarousalAdapter imageCarousalAdapter = new ImageCarousalAdapter(context, imageData);
        viewPager.setOffscreenPageLimit(imageData.size());
        viewPager.setAdapter(imageCarousalAdapter);
        viewPager.setInterval(6000);
        viewPager.setScrollDurationFactor(/*randomInRange(5.0f, 10.0f)*/20.0f);
        viewPager.setBorderAnimation(false);
        viewPager.setPageTransformer(true, new ZoomOutTranformer());
        viewPager.startAutoScroll();
    }

上面的代码是我加载recyclerView,viewPager Items的方法。

【问题讨论】:

标签: android android-recyclerview android-viewpager adapter


【解决方案1】:

您应该向 viewPager 添加一个界面,并且该活动的 onPause 触发该界面。我认为这应该有效。试试看。 :)

【讨论】:

    【解决方案2】:

    所以解决这个问题很简单,

    猜测你使用的是this library

    @Override
    protected void onPause() {
        super.onPause();
        if(viewPager!=null)
            viewPager.stopAutoScroll();
    }
    
    @Override
    protected void onResume() {
        super.onResume();
        if(viewPager!=null)
            viewPager.startAutoScroll();
    }
    

    注意:onPause() 方法中的 stopAutoScroll 方法。

    希望这对你有用!!

    【讨论】:

    • 是的,我正在使用那个库。但在我的活动中,我没有 ViewPager。 viewPager 存在于 RecyclerView 的 Adapter 中。
    • 所以你的回答没有帮助。
    猜你喜欢
    • 1970-01-01
    • 2013-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多