如何设置 viewpager 5 秒后自动换页

How to set viewpager to change page automatically after 5 sec

我想用 viewpager 制作幻灯片,页面每 5 秒自动更改一次。我完成了 viewpager,但一直被阻止到这里,有什么建议吗??

Adapter.class(它在我的片段中的内部 class)

 class CustomPagerAdapter extends PagerAdapter {

    Context mContext;
    LayoutInflater mLayoutInflater;

    public CustomPagerAdapter(Context context) {
        mContext = context;
        mLayoutInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }

    @Override
    public int getCount() {
        return mResources.length;
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view == ((LinearLayout) object);
    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {
        View itemView = mLayoutInflater.inflate(R.layout.slide_show_item, container, false);

        ImageView imageView = (ImageView) itemView.findViewById(R.id.imageView);
        imageView.setImageResource(mResources[position]);

        container.addView(itemView);

        return itemView;
    }

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        container.removeView((LinearLayout) object);
    }
}
}

这是我在片段中调用的函数

 public void setSlideShow(){

    mCustomPagerAdapter = new CustomPagerAdapter(getActivity());

    mViewPager = (ViewPager)rootView.findViewById(R.id.slide_show);
    mViewPager.setAdapter(mCustomPagerAdapter);

}

好吧,android 不提供任何在 ViewPager 中自动翻转视图的功能,但它为您提供了一个叫做 TimerTask[=25= 的东西] class 你可以用它来实现你的目标。 你可以看看这个 link 这样做。

还有一种更简单的方法可以实现此目的,但为此您将不得不放弃使用 ViewPager 的想法。相反,您可以使用 ViewFlipperViewFlipper 有自己的自动翻转方法。您只需添加这两行即可使您的视图自动翻转:

mViewFlipper.setAutoStart(true);
mViewFlipper.setFlipInterval(2000); // flip every 2 seconds (2000ms)

您可以获得 ViewFlipper 示例 here.