2013-01-05 56 views
0

我試圖讓隨機文本的視圖與時間之間暫停3次。 我只是不能!這一切都在一起運行。我承認我根本不知道線程主題,我只需要簡單的解決方案。如何以簡單的方式在android上暫停應用程序?

public void loading3() { 

     Random randomDouble = new Random(); 
     temp = (double) randomDouble.nextInt(100); 
     try { 
     Thread.sleep(1000); 
    } catch (InterruptedException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
     result.setText(temp + "%"); 

    } 

這是代碼。我想用它連續說3-4次。我該怎麼做?我嘗試在循環內或在同一行中編寫相同的方法,但它不會工作,因爲它不等待第一個方法結束,然後再啓動新方法。

+0

使用'CountDownTimer' – Houcine

回答

1

你不應該睡在主線上。這可以通過HandlerTimer輕鬆完成。這是一個帶Handler一個例子:

private int mCount = 0; 

private Handler mHandler = new Handler(); 

private Runnable mUpdater = new Runnable() { 
    public void run() { 
     Random randomDouble = new Random(); 
     temp = (double) randomDouble.nextInt(100); 
     result.setText(temp + "%"); 
     mCount++; 

     if (mCount < 3) 
      mHandler.postDelayed(mUpdater, 1000); 
    } 
} 

public void loading3() { 
    mHandler.postDelayed(mUpdater, 1000); 
} 
+0

感謝ü!這是有用的 –

+1

太棒了!請務必在解決問題時將答案標記爲已接受。這是[常見問題鏈接](http://meta.stackexchange.com/questions/16721/how-does-accept-rate-work)。 –

相關問題