首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >java.lang.NullPointerException: com.bumptech.glide.util处的参数不能为null

java.lang.NullPointerException: com.bumptech.glide.util处的参数不能为null
EN

Stack Overflow用户
提问于 2018-08-02 02:50:13
回答 4查看 12.1K关注 0票数 2

我正在使用一个简单的using适配器来适应从外部sqlite数据库检索数据到一个可消耗的列表视图。我正在使用视图绑定器来调整视图。添加第三个区块( glide在其中)之前的应用程序在添加区块..the应用程序停止后正在运行fine..but。

代码语言:javascript
运行
复制
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;
}

构建成功,应用程序打开,但当我单击应用程序停止时,..this是我的错误消息:

代码语言:javascript
运行
复制
08-01 18:40:20.512 4772-4772/ma.ac.iav.databasewithjava D/AndroidRuntime: Shutting down VM
08-01 18:40:20.585 4772-4772/ma.ac.iav.databasewithjava E/AndroidRuntime: FATAL EXCEPTION: main
    Process: ma.ac.iav.databasewithjava, PID: 4772
    java.lang.NullPointerException: Argument must not be null
        at com.bumptech.glide.util.Preconditions.checkNotNull(Preconditions.java:31)
        at com.bumptech.glide.util.Preconditions.checkNotNull(Preconditions.java:25)
        at com.bumptech.glide.RequestBuilder.into(RequestBuilder.java:651)
        at ma.ac.iav.databasewithjava.MainActivity$MyViewBinder.setViewValue(MainActivity.java:99)
        at android.widget.SimpleCursorTreeAdapter.bindView(SimpleCursorTreeAdapter.java:220)
        at android.widget.SimpleCursorTreeAdapter.bindChildView(SimpleCursorTreeAdapter.java:254)
        at android.widget.CursorTreeAdapter.getChildView(CursorTreeAdapter.java:251)
        at android.widget.ExpandableListConnector.getView(ExpandableListConnector.java:451)
        at android.widget.AbsListView.obtainView(AbsListView.java:2372)
        at android.widget.ListView.makeAndAddView(ListView.java:2052)
        at android.widget.ListView.fillDown(ListView.java:786)
        at android.widget.ListView.fillSpecific(ListView.java:1494)
        at android.widget.ListView.layoutChildren(ListView.java:1790)
        at android.widget.AbsListView.onLayout(AbsListView.java:2171)
        at android.view.View.layout(View.java:19590)
        at android.view.ViewGroup.layout(ViewGroup.java:6053)
        at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1791)
        at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1635)
        at android.widget.LinearLayout.onLayout(LinearLayout.java:1544)
        at android.view.View.layout(View.java:19590)
        at android.view.ViewGroup.layout(ViewGroup.java:6053)
        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
        at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
        at android.view.View.layout(View.java:19590)
        at android.view.ViewGroup.layout(ViewGroup.java:6053)
        at android.support.v7.widget.ActionBarOverlayLayout.onLayout(ActionBarOverlayLayout.java:443)
        at android.view.View.layout(View.java:19590)
        at android.view.ViewGroup.layout(ViewGroup.java:6053)
        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
        at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
        at android.view.View.layout(View.java:19590)
        at android.view.ViewGroup.layout(ViewGroup.java:6053)
        at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1791)
        at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1635)
        at android.widget.LinearLayout.onLayout(LinearLayout.java:1544)
        at android.view.View.layout(View.java:19590)
        at android.view.ViewGroup.layout(ViewGroup.java:6053)
        at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
        at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
        at com.android.internal.policy.DecorView.onLayout(DecorView.java:758)
        at android.view.View.layout(View.java:19590)
        at android.view.ViewGroup.layout(ViewGroup.java:6053)
        at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2484)
        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2200)
        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1386)
        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6733)
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911)
        at android.view.Choreographer.doCallbacks(Choreographer.java:723)
        at android.view.Choreographer.doFrame(Choreographer.java:658)
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:897)
        at android.os.Handler.handleCallback(Handler.java:789)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6541)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

这是我使用的版本:

代码语言:javascript
运行
复制
implementation 'com.github.bumptech.glide:glide:4.7.1'

annotationProcessor‘com.github.umptech.glide:编译器:4.7.1’

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-08-02 02:58:24

检查查询urls是否为null

这一行:

代码语言:javascript
运行
复制
urls = cursor.getString(cursor.getColumnIndex(Database.DATABASE_CHILD_3));
票数 0
EN

Stack Overflow用户

发布于 2019-06-29 16:12:49

崩溃来自:

代码语言:javascript
运行
复制
ImageView url=findViewById(R.id.child3);
Glide.with(MainActivity.this).load(urls).into(url);

因为url为空;请检查您的"R.id.child3“

票数 2
EN

Stack Overflow用户

发布于 2019-11-03 08:59:34

检查imageView是否为空

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51640394

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档