AlertDialog对话框

来源:互联网 发布:php 端口号链接超时 编辑:程序博客网 时间:2024/03/29 23:10

1,点击对话框以外区域,对话框不消失:

    在AlertDialog.Builder.create()之后才能调用这两个方法

 方法1:

   setCanceledOnTouchOutside(false);调用这个方法时,按对话框以外的地方不起作用。按返回键还起作用

方法2:

  setCancelable(false);调用这个方法时,按对话框以外的地方不起作用。按返回键也不起作用

2,点击对话框以外,进行监听事件:

builder.setOnCancerListener(OnCancerListener  listener);

3,给对话框添加按钮:

确定按钮,并设置监听器(按钮中的text  ,可以根据自己喜好设置)
builder.setPositiveButton(CharSequence text, OnClickListener listener);

中立按钮,并设置监听器(按钮中的text  ,可以根据自己喜好设置)

builder.setNeutralButton(CharSequence text, OnClickListener listener);

取消按钮,并设置监听器(按钮中的text  ,可以根据自己喜好设置)

builder.setNegativeButton(CharSequence text, OnClickListener listener);

AlertDialog.Builder  buidler = new AlertDialog.Builder(getActivity());buidler.setTitle("标题")        .setMessage("内容")        .setIcon(R.mipmap.ic_launcher)//添加图标        .setPositiveButton("确定",new DialogInterface.OnClickListener(){            @Override            public void onClick(DialogInterface dialogInterface, int i) {            }        })        .setNeutralButton("中立", new DialogInterface.OnClickListener() {            @Override            public void onClick(DialogInterface dialogInterface, int i) {            }        })        .setNegativeButton("取消", new DialogInterface.OnClickListener() {            @Override            public void onClick(DialogInterface dialogInterface, int i) {            }        })        .create().show();

4,给对话框添加条目:



1,在res/strings/中创建条目数据
<string-array name="sex_item">    <item></item>    <item></item></string-array>
2,,在activity中创建 dialog

 String[] items = getResources().getStringArray(         R.array.sex_item);
dialog = new AlertDialog.Builder(getActivity())      .setTitle("请选择性别:")      .setOnCancelListener(new DialogInterface.OnCancelListener() {          @Override          public void onCancel(DialogInterface dialogInterface) {            //点击对话框以外的地方,需要响应的事件          }      })      .setItems(items, new DialogInterface.OnClickListener() {          @Override          public void onClick(DialogInterface dialogInterface, int i) {              String  c =items[i];//获取点击条目中的数据              content.setText(c);//将数据放入你想显示的地方              dialog.dismiss();//让对话框消失                     }      }) .create();

5,修改对话框的位置;

1,新坐标: x小于0左移,大于0右移;y小于0上移,大于0下移
Window mWindow = dialog.getWindow();WindowManager.LayoutParams lp = mWindow.getAttributes();lp.x = -120;   //新位置X坐标lp.y =-120; //新位置Y坐标dialog.onWindowAttributesChanged(lp);














9 0
原创粉丝点击