java - 使用计时器的android自动滑块
问题描述
我用 View Pager 创建了一个滑块并Timer()
用于自动幻灯片,
我的代码工作正常,但滑块变化发生得如此之快,动画变化不显示。
我该如何解决这个问题?
主要活动代码:
viewPager = findViewById(R.id.viewPager);
myAdapter = new ViewPagerAdapter(this);
viewPager.setPageTransformer(true,new ZoomOutPageTransformer());
viewPager.setAdapter(myAdapter);
Timer timer = new Timer();
timer.schedule(new MyTimerTask(), 0,5000);
定时器任务代码:
public class MyTimerTask extends TimerTask {
@Override
public void run() {
MainActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
if (viewPager.getCurrentItem() == 0){
viewPager.setCurrentItem(1);
} else if (viewPager.getCurrentItem() == 1) {
viewPager.setCurrentItem(2);
} else
viewPager.setCurrentItem(0);
}
});
}
}
解决方案
推荐阅读
- php - Magento 2 - 将所有通信电子邮件发送到辅助电子邮件
- python - 连接字符串/从文件中获取值的问题
- javascript - 如何在 CSS 中使用 Autoprefix 和 PhpStorm?
- excel - 如何在没有 Control+Shift+Enter 的情况下更新 Worksheet 中的多个公式数组?
- avro - Apache Avro UnresolvedUnionException: Not in union ["null",{"type":"int","logicalType":"date"}]: 2001-01-01
- spring-mvc - 如何使用 curl 测试弹簧控制器
- excel - 查找标题,以相同的顺序复制到另一张表
- reporting-services - Power BI 矩阵自定义排序
- reactjs - React 限制嵌套更新的数量以防止无限循环
- visual-studio - 没有 C++ 就无法构建新的 Xamarin.iOS 项目