對話框在android開發中有這樣幾種形式:警告對話框、列表對話框、單選列表對話框、多選列表對話框、滾動條對話框(圓圈和條形兩種形式)、自定義對話框、日期對話框、時間對話框。下面我們介紹警告對話框的使用方式。
整體思路:在xml文件中定義一個button控件,並設置它的點擊事件,在這個點擊事件中定義一個AlertDialog.Builder 對象,設置它的屬性、顯示對話框並設置它的三個點擊按鈕的事件:確定、取消、忽略(這個一般用的比較少),在這三個事件中分別對應不同的操作。
MainActivity.java文件:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);
builder.setTitle("提示");
builder.setMessage("你確定要刪除嗎?");
builder.setIcon(R.drawable.ic_launcher);
// 次數導入包的時候,要導入android.content.DialogInterface.OnClickListener;而不是View的那個OnClickListener;
// 在上面的button的點擊事件的時候,不導入包,直接用View.OnClickListener。
// 給對話框添加積極和消極的點擊按鈕,用於處理確定和取消的操作
// 一般確定在右邊,取消在左邊,因爲用戶習慣這樣來使用
builder.setPositiveButton("確定", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int arg1) {
// TODO Auto-generated method stub
// 完成用戶的操作,比如刪除數據、提交請求等操作
dialog.dismiss();//讓對話框消失
}
});
builder.setNegativeButton("取消", new OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// TODO Auto-generated method stub
// 取消用戶的操作,比如停止下載等操作
}
});
// 一般使用忽略的這個事件比較少
builder.setNeutralButton("忽略", new OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// TODO Auto-generated method stub
// 忽略用戶的操作
}
});
AlertDialog alertDialog=builder.create();//創建一個dialog
alertDialog.show();//讓對話框顯示
}
});