我想创建一个程序有两个Button
名为button1
和button2
。这是button1
onClick
方法的阻止:
public void click1(View v){
Button b = (Button)findViewById(R.id.button2);
b.setText("TEXT 1");
SystemClock.sleep(500);
b.setText("TEXT 2");
}
但问题是在第一次将对象'b'文本更改为“TEXT 1”后,它什么都没有发生,在500 ms之后'b'的文本变为“TEXT 2”。
有什么问题?
如何刷新Layout
次观看内容?
答案 0 :(得分:1)
请使用SystemClock.sleep(500);
,而不是Handler
,您可以尝试以下代码:
public void click1(View v){
Button b = (Button)findViewById(R.id.button2);
b.setText("TEXT 1");
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
b.setText("TEXT 2");
}
}, 500;)
//b.forceLayout();
}
希望这有帮助。