0
假设我的布局中有10个文本视图。我想在每次操作之间稍微延迟一个一个地改变背景。下面是一个示例代码:函数调用期间的UI块
public void test(){
for (int i=0 ; i < 10 ; i++){
myTextViews[i].setBackgroundResource(R.color.red);
try {
Thread.sleep(200);
} catch (InterruptedException e) {
}
}
}
问题是,在运行此函数期间,主线程块和背景不会改变。当程序完成运行功能时,它们会一起改变。如果我希望用户看到每个背景在正确的时间更改,然后下一个更改,我该怎么办?
感谢。但你忘了.start()和Thread定义的末尾;) – user2808671
好的!编辑我的答案 – jaytj95
而且Thread.Sleep必须在{try} {} catch {} 只需提一下第二种方法,我应该说runOnUiThread应该可以正常工作,但我使用Handler.Post将runnable发布到主循环器,凉。 – user2808671