AlertDialogDemo

public class MainActivity extends Activity {
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
 }
 /**
  * 一般對話框
  *
  * @param view
  */
 public void normalDialog(View view) {
  Builder builder = new AlertDialog.Builder(MainActivity.this);
  builder.setIcon(R.drawable.ic_launcher);
  builder.setTitle("警告");
  builder.setMessage("確定刪除嗎");
  builder.setNegativeButton("取消", new OnClickListener() {
   @Override
   public void onClick(DialogInterface dialog, int which) {
    Toast.makeText(MainActivity.this, "取消", 0).show();
   }
  });
  builder.setPositiveButton("確定", new OnClickListener() {
   @Override
   public void onClick(DialogInterface dialog, int which) {
    // TODO Auto-generated method stub
    Toast.makeText(MainActivity.this, "確定", 0).show();
   }
  });
  builder.setNeutralButton("忽略", new OnClickListener() {
   @Override
   public void onClick(DialogInterface dialog, int which) {
    // TODO Auto-generated method stub
    Toast.makeText(MainActivity.this, "忽略", 0).show();
   }
  });
  // builder.create().show();
  builder.show();
 }
 /**
  * 列表對話框
  *
  * @param view
  */
 public void lieBiaoDialog(View view) {
  // 注意:列表對話框 不能夠設置setMessage
  Builder builder = new AlertDialog.Builder(MainActivity.this);
  builder.setTitle("你喜歡誰");
  final String[] items = { "高圓圓", "李冰冰", "范冰冰", "劉詩詩" };
  builder.setItems(items, new OnClickListener() {
   @Override
   public void onClick(DialogInterface dialog, int which) {
    Toast.makeText(MainActivity.this, which + "..." + items[which],
      0).show();
   }
  });
  builder.create().show();
 }
 /**
  * 單選對話框
  *
  * @param view
  */
 public void danXuanDialog(View view) {
  Builder builder = new AlertDialog.Builder(MainActivity.this);
  builder.setTitle("週考考了多少分");
  final String[] items = { "70分以上", "80分以上", "90分以上", "100" };
  // checkeditem爲下標 下標 爲-1 默認都不選
  builder.setSingleChoiceItems(items, 0, new OnClickListener() {
   @Override
   public void onClick(DialogInterface dialog, int which) {
    Toast.makeText(MainActivity.this, items[which], 0).show();
    dialog.dismiss();// 消失
   }
  });
  builder.create().show();
 }
 /**
  * 多選對話框
  *
  * @param view
  */
 public void duoXuanDialog(View view) {
  Builder builder = new AlertDialog.Builder(MainActivity.this);
  builder.setTitle("你喜歡誰");
  final String[] items = { "高圓圓", "李冰冰", "范冰冰", "劉詩詩" };
  final boolean[] checkedItems = { true, false, true, true };
  builder.setMultiChoiceItems(items, checkedItems,
    new OnMultiChoiceClickListener() {
     @Override
     public void onClick(DialogInterface dialog, int which,
       boolean isChecked) {
      // TODO Auto-generated method stub
      Toast.makeText(MainActivity.this,
        checkedItems[which] + "---", 0).show();
     }
    });
  builder.setPositiveButton("確定", new OnClickListener() {
   @Override
   public void onClick(DialogInterface dialog, int which) {
    String nvstar = "";
    for (int i = 0; i < checkedItems.length; i++) {
     if (checkedItems[i]) {
      nvstar += items[i];
     }
    }
    Toast.makeText(MainActivity.this, nvstar, 0).show();
   }
  });
  builder.create().show();
 }
 /**
  * 自定義對話框---自定義的佈局
  *
  * @param view
  */
 public void customnDialog(View view) {
  // 1...創建構造器
  Builder builder = new AlertDialog.Builder(MainActivity.this);
  // 2.拿到dialog
  final AlertDialog dialog = builder.create();
  // 3.設置自定義的視圖
  View v = View.inflate(MainActivity.this, R.layout.zidingyi, null);
  dialog.setView(v);
  // 4.顯示
  dialog.show();
  // 找到裏面的控件 注意:........
  final EditText editText = (EditText) v.findViewById(R.id.edit);
  Button queding = (Button) v.findViewById(R.id.queding);
  Button quxiao = (Button) v.findViewById(R.id.quxiao);
  queding.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View v) {
    // TODO Auto-generated method stub
    Toast.makeText(MainActivity.this,
      editText.getText().toString(), 0).show();
    dialog.dismiss();
   }
  });
  quxiao.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View v) {
    dialog.dismiss();
   }
  });
 }
}
發佈了77 篇原創文章 · 獲贊 2 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章