搜尋此網誌

2012年11月29日 星期四

Android 提示訊息視窗 Dialog 用法

我們在使用 Android 的時候會有一些狀況是需要提醒使用者,或是要讓使用者可以選擇"是"、"否"以及"取消"等動作。這時我們就會用到Dialog了。

使用Dialog 基本上分為幾個部分
1.初始化Dialog物件
2.設定內容
3.設定選項(是、否、取消)會進行的動作
4.show();
 AlertDialog.Builder dialog = new AlertDialog.Builder(this);
上面這段就是初始化一個物件名稱為 dialog 的 AlertDialog 物件
dialog.setTitle("Title"); //設定dialog 的title顯示內容
dialog.setIcon(android.R.drawable.ic_dialog_alert);//設定dialog 的ICON
dialog.setCancelable(false); //關閉 Android 系統的主要功能鍵(menu,home等...)
上面就是設定 dialog 的方式
dialog.setPositiveButton("收到!", new DialogInterface.OnClickListener() {  
    public void onClick(DialogInterface dialog, int which) {  
      // 按下"收到"以後要做的事情
    }  
}); 
緊接在後面接上按鈕的設定以及動作內容,不過在這邊我們是設定啥事都沒做就是了
dialog.show();
顯示出來,這樣就是一個基本的模型了!


如同上面說的 Dialog 提供了三種回應的狀態按鈕,分別是是、否、取消。這時候我們只要在設定dialog.setPositiveButton的地方在後面繼續加上 dialog.setNegativeButton 、 dialog.setNeutralButton 就行了


        AlertDialog.Builder dialog = new AlertDialog.Builder(this);
        dialog.setTitle("Title");
        dialog.setMessage("INFO");
        dialog.setIcon(android.R.drawable.ic_dialog_alert);
        dialog.setCancelable(false);  
        dialog.setPositiveButton("正", new DialogInterface.OnClickListener() {  
            public void onClick(DialogInterface dialog, int which) {  
                // 按下PositiveButton要做的事  
             Toast.makeText(MainActivity.this, "收到", Toast.LENGTH_SHORT).show();
            }  
        }); 
        dialog.setNegativeButton("負", new DialogInterface.OnClickListener() {
   public void onClick(DialogInterface dialog, int which) {
    // TODO Auto-generated method stub
    Toast.makeText(MainActivity.this, "丟掉", Toast.LENGTH_SHORT).show();
   }
  });
        dialog.setNeutralButton("中性", new DialogInterface.OnClickListener() {
   public void onClick(DialogInterface dialog, int which) {
    // TODO Auto-generated method stub
    Toast.makeText(MainActivity.this, "取消", Toast.LENGTH_LONG).show();
   }
  });
        
        dialog.show();

沒有留言:

張貼留言