1

我对android中的网格视图有疑问。我有一个 5x5 图像的网格。我想不断地改变这些图像。每次从数组中加载一组新的图像。我有一个随机生成器函数,它每次加载后都会更改 mThumbIds 数组的值。但我无法在需要一些事件来渲染新图像集之前应用新图像。在这里我没有任何事件。我希望他们不断地改变。你能不能取悦我。无法找到任何解决方案。

4

2 回答 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 回答