2015-12-17 49 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

回答

相关问题