android - 解析API但是图片是String类型 配合RecyclerView

浏览:32日期:2022-12-01

问题描述

想配合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) 修改 为正确的 新手不太懂

问题解答

回答1:

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

回答2:

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

相关文章: