我想顯示這個對話框,而線程試圖建立一個連接,但是當我按下啓動這個方法的按鈕時,對話框不會顯示出來。Progressdialog不會顯示
0
A
回答
2
它不會顯示出來,因爲(阻塞)工作是在另一個線程中完成的。這意味着,start()
- Thread
-類的方法不會阻塞。
Ergo,你顯示對話框,線程已啓動,對話框立即被解除(因此關閉)。
在run()
-method的末尾撥打電話dismiss()
,它應該可以正常工作。
以上可能適用於您,但您不應直接使用Thread
-class。它周圍有包裝紙,使用起來更舒適。
在Android中,如果您想長期使用UI-Thread,請使用AsyncTask
。
0
另外,要建立在盧卡斯說的上,你可以看看這個例子。
http://www.helloandroid.com/tutorials/using-threads-and-progressdialog
public class ProgressDialogExample extends Activity implements Runnable {
private String pi_string;
private TextView tv;
private ProgressDialog pd;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
tv = (TextView) this.findViewById(R.id.main);
tv.setText("Press any key to start calculation");
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
pd = ProgressDialog.show(this, "Working..", "Calculating Pi", true,
false);
Thread thread = new Thread(this);
thread.start();
return super.onKeyDown(keyCode, event);
}
public void run() {
pi_string = Pi.computePi(800).toString();
handler.sendEmptyMessage(0);
}
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
pd.dismiss();
tv.setText(pi_string);
}
};
}
相關問題
- 1. Android 2.3 ProgressDialog不會顯示
- 2. ProgressDialog不會立即顯示
- 3. ProgressDialog不顯示
- 4. ProgressDialog不顯示
- 5. progressDialog不顯示
- 6. ProgressDialog不會顯示,直到它太遲
- 7. ProgressDialog圈不會在設備上顯示
- 8. 將不會在android中顯示progressDialog
- 9. Android ProgressDialog不會顯示在我的AsyncTask
- 10. ProgressDialog不顯示圈
- 11. Android ProgressDialog不顯示
- 12. 顯示progressdialog不顯示在asyctask
- 13. 爲什麼ProgressDialog不顯示?
- 14. ViewPager片段不顯示ProgressDialog
- 15. ProgressDialog不顯示在android
- 16. 安卓:ProgressDialog不顯示
- 17. ProgressDialog顯示不正確的
- 18. AsyncTask ProgressDialog不以.get()顯示
- 19. 的AsyncTask不顯示ProgressDialog
- 20. ProgressDialog不顯示。再次
- 21. 顯示ProgressDialog onActivityResult
- 22. 顯示ProgressDialog Android
- 23. 顯示ProgressDialog OnItemClick
- 24. ProgressDialog沒有顯示
- 25. 未顯示Android ProgressDialog
- 26. 的StackOverflowError顯示ProgressDialog
- 27. 爲什麼ProgressDialog不能正確顯示?
- 28. 的Android onPreExecute不能顯示ProgressDialog
- 29. ProgressDialog不顯示,直到doInBackground()完成
- 30. AsyncTask progressdialog不顯示,doInBackground阻止UI
我第二盧卡斯對他的回答。 – VendettaDroid
謝謝你,這個工作 – user1629115
@ user1629115,正如我在我的答案更新中提到的那樣,你可能會想用這種類型的'AsyncTask'。 –