您的位置:首页 > 其它

AlertDialog实现

2015-10-17 10:49 232 查看
关键:

1。setItems方法,可方便地实现dialog添加列表信息

2。setOnDismissListener可实现dialog关闭事件的监听,添加isShow标志位,即可实现dialog是否已经弹出的判断,使得它不会重复弹出

public class ScreenShotDialog {
public final static String TAG = TMScreenShotDialog.class.getName();
private static boolean isShow=false;

public static void showDialog(final Context context)
{
final String items[]={"u 繁华的上海地方","发动广大粉丝","没啥事"};
//dialog参数设置
AlertDialog.Builder builder=new AlertDialog.Builder(context);
builder.setTitle("提示");
builder.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
isShow=false;
}
});
builder.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case 0:

break;
case 1:

break;
case 2:
break;
}
dialog.dismiss();
}
});
if(isShow==false) {
builder.show();
isShow=true;
}
}

}


AlertDialog实现多选一:

Dialog mDialog1 = new AlertDialog.Builder(TMScreenShotActivity.this)
.setTitle("笔尖大小")
.setSingleChoiceItems(new String[]{"细", "中等", "粗"}, whichStrokeWidth, new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
switch (which) {
case 0: {
handWriteView.strokeWidth = 3.0f;
whichStrokeWidth = 0;
break;
}
case 1: {
handWriteView.strokeWidth = 6.0f;
whichStrokeWidth = 1;
break;
}
case 2: {
handWriteView.strokeWidth = 9.0f;
whichStrokeWidth = 2;
break;
}
}
}
})
.setPositiveButton("确定", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
dialog.dismiss();
}
})
.create();
mDialog1.show();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: