Android 用(这个)[“这个”加上红色下划线]滑动;无法解析方法“;

Android 用(这个)[“这个”加上红色下划线]滑动;无法解析方法“;,android,Android,我正在使用路径作为SQLite数据库中的字符串,我正在使用Viewbinder来采用视图..我正在尝试使用Glide库..在Glide中将SQLite数据库中的路径转换为图片..在Glide中.使用(this)时,“this”保持亮显红色..我的代码有什么问题 编辑1 这是我的密码 MAINACTIVTY.JAVA public class MainActivity extends AppCompatActivity { ExpandableListView expandableList

我正在使用路径作为SQLite数据库中的字符串,我正在使用Viewbinder来采用视图..我正在尝试使用Glide库..在Glide中将SQLite数据库中的路径转换为图片..在Glide中.使用(this)时,“this”保持亮显红色..我的代码有什么问题

编辑1 这是我的密码

MAINACTIVTY.JAVA

public class MainActivity extends AppCompatActivity {
    ExpandableListView expandableListView;
    Database mDatabase;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        String[] childFrom = new String[]{Database.DATABASE_CHILD_1,Database.DATABASE_CHILD_2,Database.DATABASE_CHILD_3};
        String[] groupFrom = new String[]{Database.DATABASE_GROUP_1};

        int[] groupTo = {R.id.group1};
        int[] childTo = {R.id.child1,R.id.child2,R.id.child3};

        simplecursortreeAdapter.setViewBinder(new MyViewBinder());

        expandableListView = findViewById(R.id.expandableListview);
        expandableListView.setAdapter(simplecursortreeAdapter);
    }


    public class MyViewBinder implements SimpleCursorTreeAdapter.ViewBinder {

        @Override
        public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
            int viewID = view.getId();
            switch(viewID){
                case R.id.group1 :
                    TextView groupName = (TextView) view;
                    String groupname;
                    groupname = cursor.getString(cursor.getColumnIndex(Database.DATABASE_GROUP_1));
                    groupName.setText(groupname);
                    break;

                case R.id.child1 :
                    TextView friendName = (TextView) view;
                    String friend_name;
                    friend_name = cursor.getString(cursor.getColumnIndex(Database.DATABASE_CHILD_1));
                    friendName.setText(friend_name);
                    break;


                case R.id.child2 :
                    ImageView contactProfile = (ImageView) view;
                    byte[] imageBytes = cursor.getBlob(cursor.getColumnIndex(Database.DATABASE_CHILD_2));
                    if(imageBytes != null ){
                        // Pic image from database
                        contactProfile.setImageBitmap(BitmapFactory.decodeByteArray(imageBytes, 0, imageBytes.length));
                    }else {
                        // If image not found in database , assign a default image
                        contactProfile.setBackgroundResource(0);
                    }
                    break;
                case R.id.child3 :
                    String urls;
                    urls = cursor.getString(cursor.getColumnIndex(Database.DATABASE_CHILD_3));
                    ImageView url=findViewById(R.id.child3);
                    Glide.with(MainActivity.this).load(urls).into(url);
                    break;
            }
            return true;
试一试

用您当前的活动替换您的活动名。

这是一个简单的滑动。使用此选项,您需要检查gradle是否具有正确的相关性

第一个参数是上下文

如果您在上下文的封闭类(内部匿名类,如侦听器)中,则需要引用上下文外部的类,以便语句为:

Glide.with(OuterClassActivity.this).load(urls).into(url);
如果您在片段中添加了以下内容:

Glide.with(getActivity()).load(urls).into(url);
或者,如果您使用的帮助器方法没有可用的上下文:

ImageView url=findViewById(R.id.child3);
Glide.with(url.getContext()).load(urls).into(url);

这可不是简单的滑翔。用(这个)?否则你需要检查gradle你是否有正确的依赖关系是的,我有正确的版本..但我怀疑问题在于Glide应用程序上面的代码..从字符串URL到..@Marcos你是对的..我做了Glide..但“this”现在保持高位红色..有什么问题?使用“无法解析方法”时,您需要传递一个有效的上下文,请检查答案以查看如何获得一个。@Mithum感谢您的回答。.现在构建成功,但应用程序一直在弯曲,我确信问题出在glide所在的bloc(来自案例R.child3),因为我刚刚添加了它..在此之前,应用程序可以正常运行..请验证该区块是否存在Syntax错误致命异常:主进程:ma.ac.iav.databasewithjava,PID:3059 java.lang.NoSuchMethodError:无静态方法getFont(Landroid/content/Context;ILandroid/util/TypedValue;ILandroid/widget/TextView;)Landroid/图形/字体;类内Landroid/support/v4/content/res/ResourcesCompat;或者它的超类(声明'android.support.v4.content.res.ResourcesCompat'出现在/data/app/ma.ac.iav.databasewithjava-sAa6lB92_LvNA62g3q3nZQ===/split_lib_dependencies_apk.apk)我确实在帖子中添加了我的java文件。你能告诉我确切的位置吗。。PS:我怀疑glide所在的R.child3中的bloc有问题。因为我这样做了(glide.with(Mainactivity.this)。load(url)。into(url);构建成功,但应用程序停止!哦..您可能使用的API比您运行的设备支持的API更新,对于字体,您必须使用来自支持包的FontCompat致命异常:主进程:ma.ac.iav.databasewithjava,PID:3059 java.lang.NoSuchMethodError:无静态方法getFont(Landroid/content/Context;ILandroid/util/TypedValue;ILandroid/widget/TextView;)Landroid/graphics/Typeface;类内Landroid/support/v4/content/res/ResourcesCompat;或其超类(声明'android.support.v4.content.res.ResourcesCompat'出现在/data/app/ma.ac.iav.databasewithjava-sAa6lB92_LvNA62g3q3nZQ==/split_lib_dependencies_apk.apk中)您可能使用的API比您运行到的设备支持的API更新,因为字体必须使用support package中的FontCompat…并且您需要添加带有行号的完整堆栈跟踪,您会注意到抛出它的那一个。这是错误。我在项目中始终使用API 26。对于设备,我使用带有API 26的API 26
ImageView url=findViewById(R.id.child3);
Glide.with(url.getContext()).load(urls).into(url);