Android Studio编辑文本更新
我是Android的初学者 我做了一个简单的代码,我想在文本视图中显示hello 1,hello 2…hello 5的序列,步骤为1秒。但是,每次只有最后一个hello 5出现。有人能帮我修改代码,在文本视图中显示所有中间词,从hello 1到hello 5暂停1秒,相互改变 提前谢谢你Android Studio编辑文本更新,android,Android,我是Android的初学者 我做了一个简单的代码,我想在文本视图中显示hello 1,hello 2…hello 5的序列,步骤为1秒。但是,每次只有最后一个hello 5出现。有人能帮我修改代码,在文本视图中显示所有中间词,从hello 1到hello 5暂停1秒,相互改变 提前谢谢你 View.OnClickListener onClickListener_button1 = new View.OnClickListener() { @Override pub
View.OnClickListener onClickListener_button1 = new View.OnClickListener() {
@Override
public void onClick(View v) {
for(int i=1; i<= 5; i++){
textView.setText("hello " + i);
try{Thread.sleep(1000);
} catch(Exception e){
}
}
}
代码实际上正在运行,并将字段的内容从:hello 1更改为hello 2,再更改为hello 3等。您只有在UI未更新时才有机会看到它 代码的问题是您使用了Thread.Sleep,这将阻止UI线程,因此当UI不再冻结时,只会显示最后的hello 5 看看这篇文章,可以找到另一种选择:
代码实际上正在运行,并将字段的内容从:hello 1更改为hello 2,再更改为hello 3等。您只有在UI未更新时才有机会看到它 代码的问题是您使用了Thread.Sleep,这将阻止UI线程,因此当UI不再冻结时,只会显示最后的hello 5 看看这篇文章,可以找到另一种选择: 使用此代码:
for (int i=1; i<6; i++) {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
textView.setText("hello " + i);
}
}, 1000);
}
希望它能正常工作。使用以下代码:
for (int i=1; i<6; i++) {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
textView.setText("hello " + i);
}
}, 1000);
}
希望它能合乎逻辑地工作