我对android中的网格视图有疑问。我有一个 5x5 图像的网格。我想不断地改变这些图像。每次从数组中加载一组新的图像。我有一个随机生成器函数,它每次加载后都会更改 mThumbIds 数组的值。但我无法在需要一些事件来渲染新图像集之前应用新图像。在这里我没有任何事件。我希望他们不断地改变。你能不能取悦我。无法找到任何解决方案。
问问题
435 次
2 回答
0
您是否尝试使用 AsyncTask 更改图像?AsyncTask 可以更改一个图像,然后启动一个新的 AsyncTask。
另一种选择是使用处理程序。实际上,这可能是您最好的选择。http://mobileorchard.com/android-app-developmentthreading-part-1-handlers/
于 2012-11-03T23:50:42.707 回答
0
您的意思是每2秒触发一次图像更改功能的计时器吗?如果是这样,请尝试处理程序。就像是
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
}
};
如果你想停止循环,只需在 mUpdateImagesTask 中设置一些条件来调用 Handler.postDelayer() 或从 Runnable 外部调用 mHandler.removeCallbacks(mUpdateImagesTask) (单击按钮,即)。
于 2012-11-04T00:00:24.763 回答