1

我的代码如下:

public void onActivityResult(int requestCode, int resultCode, Intent intent){
   setContentView(R.layout.result);      //this is the layout I want to be displayed
   //do some stuff
   long t0,t1;
     t0=System.currentTimeMillis();
     do{
        t1=System.currentTimeMillis();
     }
     while (t1-t0<2000);                 //wait for two seconds
   startActivityForResult(intent, 0);    //do the intent
}

我打算发生的事情是显示布局,应用程序等待两秒钟,然后参与意图。相反,我等待结果的部分代码冻结了这两秒钟,然后意图运行,完全绕过视图。

如何让我的代码按预期运行?

4

1 回答 1

2

试试这个,创建一个Handler并使用该postDelayed()方法,这样你就不会冻结UI

 public void onActivityResult(int requestCode, int resultCode, final Intent intent){
   setContentView(R.layout.result);      //this is the layout I want to be displayed
   //do some stuff

    new Handler().postDelayed(new Runnable(){
        @Override
        public void run() {         
          startActivityForResult(intent, 0);
        }
    }, 2000);
于 2013-07-12T13:27:52.977 回答