mian.xml
<?xml version="1.0" encoding="utf-8"?><br /><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"<br /> android:layout_width="fill_parent"<br /> android:layout_height="fill_parent"<br /> android:orientation="vertical" ><br /> <TextView<br /> android:id="@+id/information"<br /> android:layout_width="fill_parent"<br /> android:layout_height="wrap_content"<br /> android:text="progressdialog"/><br /> <Button<br /> android:id="@+id/button1"<br /> android:layout_width="wrap_content"<br /> android:layout_height="wrap_content"<br /> android:text="圓形"/><br /> <Button<br /> android:id="@+id/button2"<br /> android:layout_width="wrap_content"<br /> android:layout_height="wrap_content"<br /> android:text="水平條"/></p><p></LinearLayout>
java:
package Android2.test;</p><p>import android.app.Activity;<br />import android.app.ProgressDialog;<br />import android.content.DialogInterface;<br />import android.os.Bundle;<br />import android.view.View;<br />import android.widget.Button;</p><p>public class Android2Activity extends Activity {<br />private Button Button1,Button2;</p><p> int m_count = 0;<br /> //聲明進度條對話方塊<br /> ProgressDialog progressdialog;</p><p> @Override<br /> public void onCreate(Bundle savedInstanceState)<br /> {<br /> super.onCreate(savedInstanceState);<br /> setContentView(R.layout.main);</p><p> //得到按鈕對象<br /> Button1 = (Button)findViewById(R.id.button1);<br /> Button2 = (Button)findViewById(R.id.button2);</p><p> //設定Button1的事件監聽<br /> Button1.setOnClickListener(new Button.OnClickListener() {<br /> public void onClick(View v)<br /> {<br /> // TODO Auto-generated method stub</p><p> //建立ProgressDialog對象<br /> progressdialog = new ProgressDialog(Android2Activity.this);</p><p> // 設定進度條風格,風格為圓形,旋轉的<br /> progressdialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);</p><p> // 設定ProgressDialog 標題<br /> progressdialog.setTitle("提示");</p><p> // 設定ProgressDialog 提示資訊<br /> progressdialog.setMessage("正在緩衝中,請稍等.....");</p><p> // 設定ProgressDialog 標題表徵圖<br />// m_pDialog.setIcon(R.drawable.img1);</p><p> // 設定ProgressDialog 的進度條是否不明確<br /> progressdialog.setIndeterminate(false);</p><p> // 設定ProgressDialog 是否可以按退回按鍵取消<br /> progressdialog.setCancelable(true);</p><p> // 設定ProgressDialog 的一個Button<br /> progressdialog.setButton("確定", new DialogInterface.OnClickListener() {<br /> public void onClick(DialogInterface dialog, int i)<br /> {<br /> //點擊“確定按鈕”取消對話方塊<br /> dialog.cancel();<br /> }<br /> });</p><p> // 讓ProgressDialog顯示<br /> progressdialog.show();<br /> }<br /> });</p><p> //設定Button2的事件監聽<br /> Button2.setOnClickListener(new Button.OnClickListener() {<br /> public void onClick(View v)<br /> {<br /> // TODO Auto-generated method stub</p><p> m_count = 0;</p><p> // 建立ProgressDialog對象<br /> progressdialog = new ProgressDialog(Android2Activity.this);</p><p> // 設定進度條風格,風格為長形<br /> progressdialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);</p><p> // 設定ProgressDialog 標題<br /> progressdialog.setTitle("提示");</p><p> // 設定ProgressDialog 提示資訊<br /> progressdialog.setMessage("正在緩衝中,請稍等.....");</p><p> // 設定ProgressDialog 標題表徵圖<br />// m_pDialog.setIcon(R.drawable.img2);</p><p> // 設定ProgressDialog 進度條進度<br /> progressdialog.setProgress(100);</p><p> // 設定ProgressDialog 的進度條是否不明確<br /> progressdialog.setIndeterminate(false);</p><p> // 設定ProgressDialog 是否可以按退回按鍵取消<br /> progressdialog.setCancelable(true);</p><p> // 讓ProgressDialog顯示<br /> progressdialog.show();</p><p> new Thread()<br /> {<br /> public void run()<br /> {<br /> try<br /> {<br /> while (m_count <= 100)<br /> {<br /> // 由線程來控制進度。<br /> progressdialog.setProgress(m_count++);<br /> Thread.sleep(100);<br /> }<br /> progressdialog.cancel();<br /> }<br /> catch (InterruptedException e)<br /> {<br /> progressdialog.cancel();<br /> }<br /> }<br /> }.start();</p><p> }<br /> });<br /> }<br />}<br />