0

我希望每隔几秒钟将许多图像设置为背景。我问如何做到这一点,我知道我应该使用 handler().postDelayed() 来执行该操作。我曾经遵循代码来实现我想要的,但它对我不起作用。我只得到一张图像,它根本没有改变。

new Handler().postDelayed(new Runnable() {
    public void run() {
        count += (count+1)%drawablearray.length;   
        rl.setBackgroundResource(drawablearray[count]);
           }
  }, 5000);

如果我在某个地方错了,请帮助我,或者告诉我其他一些方法来实现这一点。提前致谢

4

1 回答 1

6

你必须重新发布你的runnable:

Handler handler = new Handler();
handler.postDelayed(new Runnable() {
    public void run() {
        count += (count+1)%drawablearray.length;   
        rl.setBackgroundResource(drawablearray[count]);
        handler.postDelayed(this, 5000);   
        }
  }, 5000);
于 2013-07-06T10:55:25.690 回答