2013-12-08 31 views
0

剛剛有一些奇怪的行爲,需要問。我的想法是,這將runOnUiThreadonResume()在onCreate()中創建RunOnUiThread,它何時運行

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
      // do stuff.. 
      // do stuff.. 
      ...runOnUiThread(new Runnable() { 
       @Override 
       public void run() { 
        //Drink lemonade 
       } 
      }); 
     } 
      // do stuff.. 
      // do stuff.. 
    } 


    @Override 
    protected void onStart() { 
     super.onStart(); 
      // do stuff.. 
    } 

    @Override 
    protected void onResume() { 
     super.onResume(); 
      // do stuff.. 
    } 
+0

我從來沒有在文檔看,時間喝咖啡:) – Erik

回答

4

docs運行:

運行在UI線程上指定的動作。如果當前線程是 的UI線程,那麼該動作立即執行。如果當前 線程不是UI線程,則該操作將被髮布到UI線程的事件隊列 中。

在我看來,你不應該從UI ThreadrunOnUiThread(),因爲你已經是在UI Thread