1
A
回答
8
我建議不要等待UI線程。
您可以爲您的任務使用Handler
。 run
方法將在Handler
創建的同一線程中執行:
//delay in ms
int DELAY = 1000;
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
Intent intent = new Intent(CurrentActivity.this, NextActivity.class);
startActivity(intent);
}
}, DELAY);
-1
用戶界面在這段延遲期間是否需要做任何事情?如果沒有,你可以使用:
Thread.sleep(timeToWaitInMilliseconds);
你的處理程序的按鈕。這會在幾秒內停止UI線程,但是,您的UI將在延遲期間「凍結」。
稍微好一點的選擇是使用一個AsyncTask和一個處理程序,它是一個新線程,並讓該線程在你想要延遲新的活動打開的時間內睡眠,然後在處理程序中打開新的活動。
asynctask對於你的情況我覺得好一點,因爲它允許用戶在你的「延遲」期間與UI進行交互。在AsyncTasks
此處瞭解詳情:
http://developer.android.com/reference/android/os/AsyncTask.html
+0
我剛剛嘗試了您的建議。點擊按鈕後,我要求它查看佈局。要求它延遲5000毫秒,然後轉到新的活動。 由於某些原因,它延遲了5秒,閃爍佈局一秒鐘,然後去新的活動。 – user1274830 2012-03-31 22:05:42
相關問題
- 1. 幾秒鐘後切換圖標模式
- 2. 圖片視圖顯示幾秒鐘,然後屏幕變白
- 3. 初始屏幕等待幾秒鐘
- 4. 幾秒鐘後圖像交換
- 5. 停留在屏幕3秒後切換屏幕
- 6. 如何在屏幕上顯示圖片,幾秒鐘後刪除iteself?
- 7. Android當應用程序啓動時顯示白色屏幕幾秒鐘?
- 8. iOS主線程凍結了幾秒鐘
- 9. android屏幕切換按鈕
- 10. Android應用切換「屏幕」
- 11. Android:暫停線程幾秒
- 12. 幾秒鐘後顯示警告視圖
- 13. 幾秒鐘後形成的Javascript圖像
- 14. 幾秒鐘後停止requestAnimationFrame
- 15. 幾秒鐘後更改ImageView
- 16. javascript:window.close();後幾秒鐘X量
- 17. 幾秒鐘後隱藏div
- 18. jQuery .animate()無意中等待幾秒鐘後才執行
- 19. 幾秒鐘後應用程序崩潰
- 20. 幾秒鐘後應用程序崩潰
- 21. 轉換秒鐘到幾分鐘查詢
- 22. 線在Windows Store應用程序幾秒鐘後消失
- 23. 如何在幾秒鐘後結束線程
- 24. 顯示圖像幾秒鐘
- 25. 切換視圖/活動幾秒
- 26. Android新意圖新屏幕
- 27. android解鎖屏幕意圖?
- 28. android意圖新屏幕
- 29. Android屏幕定位意圖
- 30. 當我切換屏幕時,我的Android應用程序滯後
我做了類似的事情,但是我希望它「在延遲後做某事」它不喜歡我嘗試調用類時 意圖newClass = new Intent(this,ClassName.class); this.startActivity(newClass); – user1274830 2012-03-31 21:56:39
不要調用this.startActivity(..)。省略「this」,只是調用startActivity(..) – thaussma 2012-03-31 22:06:26
Elipse不喜歡這行代碼 - Intent class = new Intent(this,Failed.class); - 它是想讓我做到 - Intent class = new Intent(); - 但後來它不知道要拍攝什麼類。非常令人沮喪。 – user1274830 2012-03-31 22:10:59