我想在我的代码中创建一个延迟,这样一部分应在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);


希望对您有帮助。

07-27 13:45