窗口作为我们交互的一个重要组成部分,下面我将会从简单到深入地逐步示范Dialog的使用:
首先是简单确定、取消对话框的窗口:
new AlertDialog.Builder(this) this表示context上下文
.setIcon(R.drawable.question)
.setTitle("是否删除文件")
.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
new AlertDialog.Builder(Main.this)
.setMessage("文件已经被删除.").create()
.show();
}
})
.setNegativeButton("取消",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
new AlertDialog.Builder(Main.this)
.setMessage("您已经选择了取消按钮,该文件未被删除.")
.create().show();
}
}).create();
然后是简单的列表窗口:
new AlertDialog.Builder(this).setTitle("选择省份") //this表示context上下文
.setItems(provinces, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
final AlertDialog ad = new AlertDialog.Builder(
Main.this)
.setMessage(
"您已经选择了: " + which + ":"
+ provinces[which]).show();
android.os.Handler hander = new android.os.Handler();
hander.postDelayed(new Runnable() {
@Override
public void run() {
ad.dismiss();
}
}, 5 * 1000);
}
}).create();
单选窗口的建立:
new AlertDialog.Builder(this).setTitle("选择省份")
.setSingleChoiceItems(provinces, 1, buttonOnClick) //buttonOnClik用于监听选中以后处理事件
.setPositiveButton("确定", buttonOnClick)
.setNegativeButton("取消", buttonOnClick).create();
多选窗口的建立:
new AlertDialog.Builder(this)
.setIcon(R.drawable.image)
.setTitle("选择省份")
.setMultiChoiceItems(
provinces,
new boolean[] { false, true, false, true, false,
false },
new DialogInterface.OnMultiChoiceClickListener() {
public void onClick(DialogInterface dialog,
int whichButton, boolean isChecked) {
}
})
.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int whichButton) {
int count = lv.getCount();
String s = "您选择了:";
for (int i = 0; i < provinces.length; i++) {
if (lv.getCheckedItemPositions().get(i))
s += i
+ ":"
+ lv.getAdapter()
.getItem(i) + " ";
}
if (lv.getCheckedItemPositions().size() > 0) {
new AlertDialog.Builder(Main.this)
.setMessage(s).show();
} else {
new AlertDialog.Builder(Main.this)
.setMessage("您未选择任何省份").show();
}
}
}).setNegativeButton("取消", null).create();
lv = ad.getListView();
Mark down here ,之后比较容易找到自己所用的代码