Android ViewPager以编程方式滚动

Android ViewPager以编程方式滚动,android,android-viewpager,Android,Android Viewpager,我有一个简单的ViewPager。是否有任何可能通过常规动画以编程方式每五秒钟滚动一次它?查看ViewPager.setCurrentItem(int),并将其与TimerTask或处理程序相结合 例如: final ViewPager viewPager = ...; final Handler h = new Handler(Looper.getMainLooper()); final Runnable r = new Runnable() { public void run()

我有一个简单的
ViewPager
。是否有任何可能通过常规动画以编程方式每五秒钟滚动一次它?

查看
ViewPager.setCurrentItem(int)
,并将其与
TimerTask
处理程序相结合

例如:

final ViewPager viewPager = ...;
final Handler h = new Handler(Looper.getMainLooper());
final Runnable r = new Runnable() { 
    public void run() {
        viewPager.setCurrentItem(0, true);
        h.postDelayed(r, 5000); 
    }
};
h.postDelayed(r, 5000); 

确保在适当的时候取消runnable。

谢谢!我没想到,这会这么容易。只有一个更正:您应该调用ViewPager.setCurrentItem(int,boolean)更新答案,并使用代码。确保你了解发生了什么,很容易泄漏东西。你必须更改h.postDelayed(r,5000);致h.postDelayed(本,5000);行
h.postDelayed(r,5000)run()
中的code>不可访问。您可以将其更改为
h.postDelayed(这是5000),因为它是runnable(您要访问的)中的一个方法。我使用VerticalPageViewer时,这对我不起作用