我想在我的代码中创建一个延迟,这样一部分应在5秒后执行,另一部分应在10秒后执行。我已经尝试过TRY CAtcH线程,但是不知道问题出在哪里..这是我的代码吗,请看一下..感谢您的帮助....
// This portion to be executed after 5 seconds
val1 = Integer.parseInt(String.valueOf(unit.getText()));
val2 = Integer.parseInt(String.valueOf(unit2.getText()));
result = val1 + val2;
val = Integer.toString(result);
int len = val.length();
if (len == 1) {
num1 = Integer.parseInt(String.valueOf(val.toString().charAt(len - 1)));
unitanswer1.setText(Integer.toString(num1));
unitanswer2.setText(Integer.toString(0));
unitanswer2.setVisibility(View.INVISIBLE);
} else {
num1 = Integer.parseInt(String.valueOf(val.toString().charAt(len - 1)));
unitanswer1.setText(Integer.toString(num1));
num2 = Integer.parseInt(String.valueOf(val.toString().charAt(len - 2)));
unitanswer2.setText(Integer.toString(num2));
}
//此部分将在10秒后执行
val1 = Integer.parseInt(String.valueOf(tens.getText()));
val2 = Integer.parseInt(String.valueOf(ten2.getText()));
val3=Integer.parseInt(String.valueOf(unitanswer2.getText()));
result = val1 + val2 + val3;
val = Integer.toString(result);
len = val.length();
if (len == 1) {
num1 = Integer.parseInt(String.valueOf(val.toString().charAt(len - 1)));
tenanswer1.setText(Integer.toString(num1));
tenanswer2.setText(Integer.toString(0));
tenanswer2.setVisibility(View.INVISIBLE);
}
else {
num1 = Integer.parseInt(String.valueOf(val.toString().charAt(len - 1)));
tenanswer1.setText(Integer.toString(num1));
num2 = Integer.parseInt(String.valueOf(val.toString().charAt(len - 2)));
tenanswer2.setText(Integer.toString(num2));
//Animation's work to be done here.....
//remaining possibilites of addition....
}
}
最佳答案
尝试这个:
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
// This portion to be executed after 5 seconds
...
}
},5*1000);
和这个:
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
//This portion to be executed after 10 seconds
...
}
},10*1000);
希望对您有帮助。