Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android開發入門(一)詳解活動 1.5 顯示進度對話框

Android開發入門(一)詳解活動 1.5 顯示進度對話框

編輯: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()方法,對話框就被解除了。

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved