上
CountDownTimer
onFinish
方法,我想将2个字符串设置为2个不同的视图,如下所示
public void onFinish() {
setText(timer, getString(R.string.times_up));
setText(speedTextView, speedValue);
setColorTimer(timer, Color.RED);
runOnUiThread(new Runnable() {
public void run() {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
Intent intent = new Intent(getApplicationContext(), ResultActivity.class);
startActivity(intent);
}
}, 3000);
}
});
}
但是,当计时器完成时,
R.string.times_up
值被强制转换为
timer
和
speedTextView
查看。我改变了两行的顺序,在这种情况下,
speedValue
在两个视图上强制转换,尽管它们应该是两个不同的方法调用。
setText
方法是一个经过修改的方法,用于在主线程上运行它们,而不是像这样运行后台线程
private void setText(final TextView text, String value) {
speedValueToSetText = value;
runOnUiThread(new Runnable() {
@Override
public void run() {
text.setText(speedValueToSetText);
}
});
}
我如何解决这个问题?settext方法不应该彼此独立吗?