編輯:Android開發教程
當要進行耗時的操作的時候,往往會看見“請稍候”字樣的對話框。例如,用戶正在登入服務器,此時並 不允許用戶使用這個軟件,或者應用程序把結果返回給用戶之前,要進行某些耗時的計算。在這些情況下, 顯示一個“進度條”對話框,能友好地讓用戶等待,同時也能阻止用戶進行某些不必要的操作。
1. 創建一個工程:Dialog。
2. main.xml中的代碼。
<?xml version="1.0"
encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<Button
android:id="@+id/btn_dialog2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="onClick2"
android:text="Click to display a progress dialog" />
</LinearLayout>
3. DialogActivity.java中的代碼。
public class
DialogActivity extends Activity {
ProgressDialog progressDialog;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
public void onClick2(View v) {
// ---show the dialog---
final ProgressDialog dialog = ProgressDialog.show(this,
"Doing something", "Please wait...", true);
new Thread(new Runnable() {
public void run() {
try {
// ---simulate doing something lengthy---
Thread.sleep(5000);
// ---dismiss the dialog---
dialog.dismiss();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
}
}
4. 按F11調試,點擊按鈕,彈出“進度條”對話框。

基本 上,想要創建一個“進度條”對話框,只需要創建一個ProgressDialog類的實例,然後調用show()方法:
// ---show the dialog---
final ProgressDialog dialog = ProgressDialog.show(this,
"Doing something", "Please wait...", true);
因為它是一個“模態”的對話框,所以 它就會把其他UI組件給遮蓋住,直到它被解除。如果想要在後台執行一個“長期運行”的任務,可以創建一 個線程。run()方法裡面的代碼將會在一個獨立的線程裡面執行。下面的代碼使用sleep()方法,模擬了一個 需要5秒執行的後台任務:
new Thread(new Runnable() {
public void run() {
try {
// ---simulate doing something lengthy---
Thread.sleep(5000);
// ---dismiss the dialog---
dialog.dismiss();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
5秒鐘之後,執行dismiss()方法,對話框就被解除了。
 
Android ApiDemos示例解析(4) App->Activity->Custom Dialog
App->Activity->Custom Dialog 例子使用Activity 來實現自定義對話框。 類CustomDialogActivity本身無任何
Android UI設計與開發教程 引導界面(二)使用ViewPager實現歡迎引導頁面
本系列文章都會以一個程序的實例開發為主線來進行講解,以求達到一個循序漸進的學習效果,這樣更能 加深大家對於程序為什麼要這樣寫的用意,理論加上實際的應用才能達到事半功倍的
Android RoboGuice使用指南(13) RoboGuice功能描述
前面在Android RoboGuice 使用指南(1):概述 對應Roboguice做了簡要的介紹 ,之後介紹了Google Guice的基本用法,Roboguice是
Android ApiDemos示例解析(34):App->Preferences->Preferences from code
這裡我們使用類比的方法,將 PreferenceActivity 與一般的Activity 作個類比,可以更好的理解Android.Preference中的 各個類。
Android ApiDemos示例解析(40):App->Service->Local Service Controller
Local Service Controller 是將LocalServ