|
1、普通對話框: 給出提示信息,有yes、no兩個按鈕。
1 AlertDialog dialog=new AlertDialog.Builder(this) //this代表當前Activity對象,表示此對話框?qū)儆诋斍癆ctivity對象。也可用 類名.this 指定為其它的Activity對象 2 .setPositiveButton("確定",null) //要加的按鈕必須放在create()之前 3 .setNegativeButton("取消",null) //第一個參數(shù)是按鈕上的文本,第二個是監(jiān)聽器OnClickListener,可設置為null,點擊時退出對話框 4 .setTitle("提示") //標題 5 .setMessage("是否退出?") //提示信息 6 .setIcon(R.drawable.a) //圖標,只能是R.xxx.yyy的形式 7 .create(); //不用create(),直接show()也行 8 9 //標題、提示信息、圖標也可以后面再設置 10 //dialog.setTitle("提示"); 11 //dialog.setMessage("是否退出"); 12 //dialog.setIcon(R.drawable.a); 13 14 dialog.show(); //顯示對話框 15 //dialog.hide(); //隱藏對話框
所有對話框都有 setTitle()、setMessage()、setIcon()、show()、hide()的方法。 其中 setTitle()、setMessage()、setIcon()既可以在create()之前使用,也可以在create()創(chuàng)建對話框后再使用。
2、單選對話框
1 AlertDialog dialog=new AlertDialog.Builder(this) 2 .setTitle("請選擇性別") 3 .setIcon(R.drawable.a) 4 ////設置一組單選按鈕,第一個參數(shù)是String數(shù)組,第二參數(shù)設置默認選中的項(數(shù)組下標),第三個參數(shù)單選按鈕的監(jiān)聽器 5 .setSingleChoiceItems(new String[]{"男","女"},0,null) 6 .show(); //不用create(),直接show()也行
3、多選對話框
1 AlertDialog dialog=new AlertDialog.Builder(this) 2 .setTitle("請選擇愛好") 3 .setIcon(R.drawable.a) 4 //設置一組多選按鈕,第一個參數(shù)是String數(shù)組,第二參數(shù)boolean數(shù)組,true表示該項默認選中,第三個參數(shù)是監(jiān)聽器 5 .setMultiChoiceItems(new String[]{"讀書","運動","旅游"},new boolean[]{true,true,false},null) 6 .show();
以上三種對話框中用到的事件監(jiān)聽: 1 new DialogInterface.OnClickListener() { 2 @Override 3 public void onClick(DialogInterface dialogInterface, int i) { 4 //i代表當前按鈕的編號 5 } 6 } 普通對話框中,這個事件監(jiān)聽是某個按鈕的事件監(jiān)聽。 單選/多線對話框中,這個事件監(jiān)聽是每個選項的事件監(jiān)聽,即點擊一個選項,就會觸發(fā)事件一次。
普通對話框、單選對話框、多選對話框都是AlertDialog。進度條對話框是ProgressDialog。
4、進度條對話框 當程序在進行耗時的操作時(比如下載文件),可以用進度條對話框來顯示進度。 進度條有2種樣式:
水平進度條 圓形進度條(圓圈會一直轉(zhuǎn)動)
1 ProgressDialog dialog=new ProgressDialog(this); //注意用法有點不同,沒有Builder() 2 dialog.setTitle("下載進度"); //注意ProgressDialog的方法都只能單獨寫,不能在創(chuàng)建ProgressDialog對象時寫在后面 3 dialog.setIcon(R.drawable.a); 4 dialog.setMessage("正在下載請稍后"); //文本可用setMessage()動態(tài)修改,顯示當前的具體操作 5 dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); //設置進度條樣式 6 dialog.show();
5、消息對話框 消息對話框(Toast)是輕量級消息提醒機制,用于向用戶顯示即時消息。 Toast對話框顯示在程序界面的最上層(最前面),顯示一段時間后自動消失,不會打斷當前操作,也不會獲取焦點,只起到提示作用。
1 //makeText()是Toast類的靜態(tài)方法。 2 //第一個參數(shù)指定消息對話框所屬的Activity,可用Activity類名.this指定其他的,第二個參數(shù)指定提示文本,第三個參數(shù)是Toast類的預定義常量,指定顯示時間的長短。 3 //要調(diào)用show()才會顯示。 4 Toast.makeText(this,"電量不足10%!",Toast.LENGTH_LONG).show();
|
|
|