Android4.0以上AlertDialog在触摸对话框边缘外部,对话框消失
可以设置这么一条属性,当然必须先AlertDialog.Builder.create().show()之后才能调用这两个方法
方法一:
setCanceledOnTouchOutside(false);调用这个方法时,按对话框以外的地方不起作用。按返回键还起作用(可以在create()之后创建)
方法二:
setCancelable(false);调用这个方法时,按对话框以外的地方不起作用。按返回键也不起作用(必须在show()之后创建)
1、
TableLayout tableLayout = (TableLayout)getLayoutInflater().inflate(R.layout.tablelayout_log, null);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("自定义View框图").setIcon(R.drawable.b23_small)
.setView(tableLayout);
setNegativeButton(builder);
setPositiveButton(builder);
builder.setOnCancelListener(new DialogInterface.OnCancelListener() {
@Override
public void onCancel(DialogInterface dialog) {
// TODO Auto-generated method stub
dialogctr = false;
}
});
builder.create();
builder.show().setCanceledOnTouchOutside(false);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("简单列表对话框标题");
builder.setIcon(R.drawable.b23_small);
builder.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
showText(2,"选择对象:"+items[which]);
}
});
//setPositiveButton(builder);
setNegativeButton(builder);
//setNeutralButton(builder);
builder.create();
builder.show().setCancelable(false);