我有一个关于android中的网格视图的问题。 我有一个5x5图像的网格。我想连续改变这些图像。每次从该阵列加载新的一组图像。 我有一个随机生成器函数,它在每次加载后都会更改mThumbIds数组的值。 但是我无法在需要某些事件呈现新图像之前应用新图像。在这里我没有任何事件。我希望他们不断改变。 你可以请我。 无法找到任何解决方案。Android开发 - 在2秒后连续更改gridview图像 - 如何使用处理程序来完成此任务?
回答
您是否尝试使用AsyncTask更改图像? AsyncTask可以更改一个图像,然后启动一个新的AsyncTask。
另一种选择是使用处理程序。实际上这可能是你最好的选择。 http://mobileorchard.com/android-app-developmentthreading-part-1-handlers/
你是说每2秒触发一次图像更改功能的计时器?如果是这样,请尝试一个Handler。像
private Handler mHandler = new Handler();
public void onCreate(Bundle savedInstanceState) {
// init grid and set first batch of images
}
protected void onResume() {
mHandler.postDelayed(mUpdateImagesTask , 2000);
}
private Runnable mUpdateImagesTask = new Runnable() {
public void run() {
// Code to change the images
// call me in 2 seconds...
mHandler.postDelayed(this, 2000); // 2 seconds
}
};
如果要停止循环的东西只是把一些条件来调用Handler.postDelayer()内mUpdateImagesTask或从外面的Runnable调用mHandler.removeCallbacks(mUpdateImagesTask)(在点击一个按钮,即)。
你好,非常感谢你的回应..但我试过了处理程序。它似乎没有工作。我的网格中有5x5图片。现在2秒后,我有一个叫做ShuffleArray()的函数,我调用了它并将我的图像适配器的mThumbIds数组洗掉。然后我打电话给notifydataset更改显示更新的网格。这是我想要做的。处理程序解决方案无效。我曾尝试过。 :(我希望在几秒钟后洗出25张图像,这样它会看起来像是连续的动画,你能告诉我我错了吗? – user1797286
你可以发布你的代码来看看发生? – rgrocha
- 1. 如何在2秒和5秒后使用处理程序更改ImageView的图片?
- 2. 如何在android中的服务器2秒后在imageview中更改图像?
- 3. 使用Go完成常见App Engine处理程序任务
- 4. 任务完成后处理代码
- 5. 如何使用SQL或R库sqldf来完成此任务?
- 6. Php mysql在30秒后完成任务
- 7. 任务完成后更改光标
- 8. 批处理文件完成后,批处理文件在“任务计划程序”下运行,并继续运行
- 9. 如何用jquery完成此任务?
- 10. 如何使用处理程序在后台运行任务
- 11. 如何确保信号处理程序完成,然后才继续程序?
- 12. 如何更改此图片的点击处理程序?
- 13. 可能使用Javascript完成此任务?
- 14. 等待处理程序完成Android
- 15. 完成处理程序内的完成处理程序?
- 16. 如何在异步任务完成后更改活动?
- 17. 连续延迟的android处理程序
- 18. Android:在x秒后多次更新gridview
- 19. 使用Swift中的完成处理程序动画图像
- 20. Google App Engine:如何使用任务队列进行此处理?
- 21. 后台完成处理程序崩溃的应用程序,如果完成PushViewController
- 22. Android Studio将异步任务更改为处理程序
- 23. Android在后台连续加速处理
- 24. 完成处理程序Android Kotlin
- 25. 如何在iOS应用程序中使用多任务处理?
- 26. 如何使用Objective C处理关闭应用程序多任务处理?
- 27. BluetoothServerSocket:如何处理后续连接
- 28. Android - 在未运行时处理应用程序连接更改
- 29. 任务MaxDegreeOfParallelism可以在完成处理文件后报告吗?
- 30. 等待完成处理程序完成
你好,非常感谢你的回复..但我试过处理程序。它似乎没有工作。我的网格中有5x5图片。现在2秒后,我有一个叫做ShuffleArray()的函数,我调用了它并将我的图像适配器的mThumbIds数组洗掉。然后我打电话给notifydataset更改显示更新的网格。这是我想要做的。处理程序解决方案无效。我曾尝试过。 :(我希望在几秒钟后洗出25张图像后,这些图像会发生变化,所以这使得它看起来像是一些连续的动作。你能告诉我我要去哪里吗? – user1797286
也可以告诉我应该如何使用处理程序....?也许我在那里做错了什么.. – user1797286
显示如何使用它。更新您的问题。@ rgocha的方法是正确的。 – Snicolas