我的测试程序应该更改 TextViews 文本,完成后,它应该在下一次文本更改之前等待。但是,我的程序会立即在文本之间进行更改:
t.setText("Test!");
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
t.setText("Test - after 1 second!");
}
},1000);
第一个文本甚至没有接近一秒。
答案 0 :(得分:2)
很难说为什么这种方法无法使用有限数量的代码,但您可以将帖子延迟添加到View
。你不需要处理程序。
t.setText("Test!");
t.postDelayed(new Runnable() {
@Override
public void run() {
t.setText("Test - after 1 second!");
}
}, 1000);
Android中的所有Views
都有内置的处理程序类。
答案 1 :(得分:1)
您缺少以下内容:
handler.postDelayed(this, 1000);
在run方法中。这里这个将引用处理程序对象