gpt4 book ai didi

android - 如何在 viewPager 页面之间自动切换

转载 作者:IT老高 更新时间:2023-10-28 23:07:44 26 4
gpt4 key购买 nike

我有一个 android 应用程序,它使用一个有两个页面的 ViewPager当 Activity 首次显示时,我想将每个页面依次呈现给用户,以便他们知道他们可以在两个 View 之间滑动。我找不到任何描述如何执行此操作的文档。我发现 PageTransformations 听起来很有希望,但用户必须先滑动。一旦 ViewPager 中的第一页显示,我需要我的两个页面自动滚动。怎样才能达到预期的效果?

最佳答案

您可以为此目的使用 Timer。以下代码一目了然:

// ---------------------------------------------------------------------------

Timer timer;
int page = 1;

public void pageSwitcher(int seconds) {
timer = new Timer(); // At this line a new Thread will be created
timer.scheduleAtFixedRate(new RemindTask(), 0, seconds * 1000); // delay
// in
// milliseconds
}

// this is an inner class...
class RemindTask extends TimerTask {

@Override
public void run() {

// As the TimerTask run on a seprate thread from UI thread we have
// to call runOnUiThread to do work on UI thread.
runOnUiThread(new Runnable() {
public void run() {

if (page > 4) { // In my case the number of pages are 5
timer.cancel();
// Showing a toast for just testing purpose
Toast.makeText(getApplicationContext(), "Timer stoped",
Toast.LENGTH_LONG).show();
} else {
mViewPager.setCurrentItem(page++);
}
}
});

}
}

// ---------------------------------------------------------------------------

注意1:确保在viewPager内部正确设置adapter后调用pageSwitcher方法onCreate Activity 的方法。

注意 2:viewPager 会在您每次启动时滑动。您必须对其进行处理,使其仅在所有页面中滑动一次(当用户第一次查看 viewPager 时)

注意3:如果你想进一步减慢viewPager的滚动速度,可以follow this answer on StackOverflow.


如果这不能帮助你,请在评论中告诉我...

关于android - 如何在 viewPager 页面之间自动切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17610085/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com