2015-12-17 102 views
0

正如我所看到的,Android不會等待像setContentView(...)這樣的句子之前執行所有句子。如何在Android執行setContentView(..)之前等待句子結束?

舉例來說,我不能做到這一點:

Calendar c = Calendar.getInstance(); 
    int seg = c.get(Calendar.SECOND); 
    int min = c.get(Calendar.MINUTE); 
    int sum = 1; 
    for (int i = seg; i < 5 + seg; i++){ 
     for(int j = min; j < 10000+ min; j++){ 
      seg = c.get(Calendar.SECOND); 
      sum += seg; 
     } 
     Toast.makeText(getApplicationContext(), Integer.toString(sum), Toast.LENGTH_SHORT).show(); 

    } 

    setContentView(R.layout.results); 

Android的計算完成之前執行的setContentView。我該如何做到這一點Android之前等待句子?

+0

究竟是你的要求嗎? – OBX

+4

對不起,你只是錯了。 Java按順序執行函數中的每一行。它不可能跳過行或在前一行結束之前轉到下一行。你的代碼中可能存在一個bug,但不是那樣。如果它在設置內容視圖之前沒有看到5個祝詞 - 那是因爲顯示祝詞將消息發送到另一個線程。如果你需要你需要的功能來推出你自己的烤麪包用戶界面,那麼沒有辦法阻止所有的吐司被顯示出來。 –

+2

一般而言,對於幾乎每個UI問題,「吐司」都是錯誤的解決方案。像我這樣的人爲了簡單而在書本中使用它,並不是因爲使用「Toast」是個好主意。 – CommonsWare

回答

相關問題