首页 > 解决方案 > 为什么我的程序无法在我的材质对话框方法中解析符号“Builder”

问题描述

我正在尝试在 android 10 中创建一个材质对话框,要求从相机或图库中获取图片。我的方法中有这两个问题:无法解析符号“Builder”和无法解析符号“ListCallback”。我该如何分类这些问题?

我在 value 文件夹中有两个字符串数组:string-array name="uploadImages" 和 string-array name="itemIds"。

我仍然被困在这里......这就是我所做的

我一直试图为自己找到这个问题,但我仍然没有找到解决该错误的方法。这不是编译器错误,我在编写方法时得到它。我已经从https://github.com/afollestad/material-dialogs加载了所有依赖项,但仍然收到错误“无法解析符号(构建器)”。MaterialDialogs.Builder(this) '和'无法解析符号(ListCallback())'。

如果我使用 minSdkVersion 19 和 targetSdkVersion 26 它工作正常。但是在这个版本中''minSdkVersion 21 to targetSdkVersion 29''它不起作用。我无法真正弄清楚这一点。我感谢您的帮助。谢谢

这是代码:

public void onClick(final View view) 
{ 
        switch (view.getId()) {
            case R.id.pick_image:
                         new MaterialDialog.Builder(this)
                       .title(R.string.uploadImages)
                       .items(R.array.uploadImages)
                       .itemsIds(R.array.itemIds)
                       .itemsCallback(new MaterialDialog.ListCallback() {

                            public void onSelection(MaterialDialog dialog, View view, int which, CharSequence text) {
                                switch (which){
                                    case 0:
                                        Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
                                        photoPickerIntent.setType("image/*");
                                        startActivityForResult(photoPickerIntent, SELECT_PHOTO);
                                        break;
                                    case 1:
                                        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                                        startActivityForResult(intent, CAPTURE_PHOTO);
                                        break;
                                    case 2:
                                        profileImageView.setImageResource(R.drawable.jetplane);
                                        break;
                                }
                            }
                        })
             .show();

                break;
        }
}

标签: javaandroiddialog

解决方案


这么晚了,但无论如何

将此添加到 Build gradle app 模块并删除与 com.afollestad.material 相关的所有其他实现

实施组:'com.afollestad.material-dialogs',名称:'commons',版本:'0.9.6.0'


推荐阅读