Android常见的弹窗及使用方法

转载自:https://blog.csdn.net/qq_35698774/article/details/79779238

 setTitle :为对话框设置标题
 setIcon :为对话框设置图标
 setMessage:为对话框设置内容
 setView : 给对话框设置自定义样式
 setItems :设置对话框要显示的一个list,一般用于显示几个命令时
 setMultiChoiceItems :用来设置对话框显示一系列的复选框
 setSingleChoiceItems :用来设置对话框显示一系列的单选框
 setNeutralButton    :普通按钮
 setPositiveButton   :给对话框添加"Yes"按钮
 setNegativeButton :对话框添加"No"按钮
 create : 创建对话框
 show :显示对话框
  1. 自定义View
//(此处也可选用setAdapter的方式)
//mData自己进行填充数据的内容初始化
List<String> mData = new ArrayList<>();
//主要代码一
AlertDialog.Builder dialog = new ALertDialog.Builder();
//这部分与配置recyclerView 的Adapter类似
View dialogView = View.inflate(this,R.layout.dialog_layout,null);
CustomAdapter viewAdapter = new CustomAdapter(this,mData);
dialogView.setAdapter(viewAdapter);
viewAdapter.setOnItemClickListener(this);
//主要代码二
AlertDialog  showDialog = dialog.setView(dialogView).create();
/**
*此处注意:
*①每次在显示dialog的时候,都需要进行创建,不然,会报You must call removeView() on the child's parent first.的错。
*/
  1. setAdapter的用法
AlertDialog alertDialog6 = new AlertDialog.Builder(this)
        .setTitle("title")
        .setIcon(R.mipmap.ic_launcher)
        .setAdapter(new ArrayAdapter<String>(AlertDialogActivity.this, R.layout.item, R.id.tv, items6), new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i) {
                Toast.makeText(AlertDialogActivity.this, "点的是:" + items6[i], Toast.LENGTH_SHORT).show();
            }
        })
        .create();
alertDialog6.show();
  1. 设置简单内容、单选、多选列表
     final String[] items4 = new String[]{"a ", "b ", "c ", "d "};//创建item
     AlertDialog alertDialog4 = new AlertDialog.Builder(this)
       .setTitle("选择")
       .setIcon(R.mipmap.ic_launcher)
       //只设置内容
       .setMessage("content")
       //设置多选列表
         .setMultiChoiceItems(items5, booleans, new DialogInterface.OnMultiChoiceClickListener() {//创建多选框
           @Override
           public void onClick(DialogInterface dialogInterface, int i, boolean b) {
               booleans[i] = b;
           }
       })
       //单列表设置
       .setItems(items3, new DialogInterface.OnClickListener() {//添加列表
       //单选列表设置
       .setSingleChoiceItems(items4, 0, new DialogInterface.OnClickListener() {//添加单选框
           @Override
           public void onClick(DialogInterface dialogInterface, int i) {
               index = i;
           }
       })
       .setPositiveButton("确定", new DialogInterface.OnClickListener() {//添加"Yes"按钮
           @Override
           public void onClick(DialogInterface dialogInterface, int i) {
               Toast.makeText(AlertDialogActivity.this, "这是确定按钮" + "点的是:" + items4[index], Toast.LENGTH_SHORT).show();
           }
       })

       .setNegativeButton("取消", new DialogInterface.OnClickListener() {//添加取消
           @Override
           public void onClick(DialogInterface dialogInterface, int i) {
               Toast.makeText(AlertDialogActivity.this, "这是取消按钮", Toast.LENGTH_SHORT).show();
           }
       })
       .create();
       alertDialog4.show();

猜你喜欢

转载自blog.csdn.net/weixin_37716758/article/details/83996285