如何使用Multichoice项目和EditText制作Alertdialog? [英] How to make an Alertdialog with Multichoice items along with an EditText?

查看:110
本文介绍了如何使用Multichoice项目和EditText制作Alertdialog?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有多项选择项目的AlertDialog.我希望每个项目旁边都有EditText.我该如何实现?

I have a AlertDialog of Multichoice Items.I want to have an EditText beside each item. How do i achieve this?

 third_card.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                final AlertDialog.Builder mBuilder = new AlertDialog.Builder(EnterRecordActivity.this);
                mBuilder.setTitle("Select Contributor");
                mBuilder.setMultiChoiceItems(listMembers, checkedMembers, new DialogInterface.OnMultiChoiceClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int position, boolean isChecked) {

                    }
                });
                mDialog = mBuilder.create();
                mDialog.show();
            }
        });

这是我到目前为止使用以下代码实现的结果

这就是我想要的.包含每个选择项的编辑文本

推荐答案

创建自定义对话框,如下所示:

     AlertDialog.Builder builder = new AlertDialog.Builder(this);
            LayoutInflater inflater = (this).getLayoutInflater();
            //Your layout file name is custom_check_with_edt
            View dialogView = inflater.inflate(R.layout.custom_check_with_edt, null);
           //get Id from custom view            
            EditText edtNote = dialogView.findViewById(R.id.edt_notes);

            builder.setView(dialogView);
            builder.setPositiveButton("Ok", (dialog, which) -> {
                   //YOUR LOGIC
                }
                dialog.dismiss();
            });
            builder.setNegativeButton("Cancel", (dialog, which) -> dialog.dismiss());
            builder.setCancelable(true);
            Dialog dialog = builder.create();
            dialog.show();

这篇关于如何使用Multichoice项目和EditText制作Alertdialog?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆