android - 解析API但是图片是String类型 配合RecyclerView
阿神
阿神 2017-04-17 17:39:00
0
2
436

想配合RecyclerView使用
但是在onBindViewHolder方法中

 @Override
    public void onBindViewHolder(MyViewHolder holder, int position) {
        Utility.getImageLoader().displayImage(newses.get(position).getImages().get(0),
                holder.news_image,Utility.getDisplayImageOptions());
        holder.news_title.setText(newses.get(position).getTitle());

    }
   

会出现此问题

                java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.Object java.util.List.get(int)' on a null object reference
                                                                                     at com.example.axtonsun.zhihudaily.Adapter.RvAdapter.onBindViewHolder(RvAdapter.java:39)
                                                                                     at com.example.axtonsun.zhihudaily.Adapter.RvAdapter.onBindViewHolder(RvAdapter.java:20)
                                                                                     at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:5768)
                                                                                     at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:5801)
                                                                                     at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5037)
                                                                                     
                                                                                        

在Utility.getImageLoader()中

 public static ImageLoader getImageLoader() {
        return ImageLoader.getInstance();
    }

    public static DisplayImageOptions getDisplayImageOptions() {
        return new DisplayImageOptions.Builder()
                .showImageOnLoading(R.drawable.start0) //设置图片在下载期间显示的图片
                .showImageForEmptyUri(R.drawable.start1)//设置图片Uri为空或是错误的时候显示的图片
                .showImageOnFail(R.drawable.start2)  //设置图片加载/解码过程中错误时候显示的图片
                .displayer(new FadeInBitmapDisplayer(0))//是否图片加载好后渐入的动画时间
                .cacheInMemory(true)
                .cacheOnDisk(true)
                .build();
    }                     

public void displayImage(String uri,ImageView imageView,DisplayImageOptionsoptions) 第一个参数是String类型的URL

那我我该怎么在onBindViewHolder的 newses.get(position).getImages().get(0) 修改 为正确的
新手不太懂

阿神
阿神

闭关修行中......

Antworte allen(2)
PHPzhong

你这是报空指针异常,你看下你的newses是否为空

迷茫

用debug调试,打个端点看看newses 的值。NullPointerException 凭经验讲,这东西跟RecyclerView 没啥关系,跟数据有关。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage