0
我试图做到这一点,但我没有运气,图像不显示在屏幕上 我很新,所以这里是我的代码我试图使用RecyclerVIewAdapter和毕加索将图像添加到RecyclerView中
我RecyclerViewAdapter:
public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.ViewHolder> {
public Context context;
public ArrayList<MoviesData> array;
public LayoutInflater inflater;
RecyclerViewAdapter(Context context,ArrayList<MoviesData> array)
{
this.context = context;
this.array = array;
this.inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
public class ViewHolder extends RecyclerView.ViewHolder {
ImageView image;
public ViewHolder(View itemView) {
super(itemView);
image = (ImageView) itemView.findViewById(R.id.oneMovieBlockImageView);
}
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View rootview = inflater.inflate(R.layout.movie_block,parent,false);
ViewHolder viewHolder = new ViewHolder(rootview);
return viewHolder;
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
//holder.image.setImageResource(Picasso.with(context).load(array.get(position).getPoster_path()).into(image));
MoviesData current = array.get(position);
Picasso.with(context).load(current.getPoster_path()).into(holder.image);
}
@Override
public int getItemCount() {
return 0;
}
}
我的LinearLayout它具有RecyclerView
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.android.themovieapp.MainActivityFragment"
>
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/recyclerview"
>
</android.support.v7.widget.RecyclerView>
</LinearLayout>
我的ImageView
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:id="@+id/oneMovieBlockImageView"
android:adjustViewBounds="true"
>
</ImageView>
onCreateView方法
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
updateMovies();
View rootView = inflater.inflate(R.layout.fragment_main,container,false);
RecyclerView recyclerView = (RecyclerView) rootView.findViewById(R.id.recyclerview);
adapter = new RecyclerViewAdapter(getActivity(),moviesDatas);
recyclerView.setAdapter(adapter);
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
return rootView;
}
这给了我NullPonterException。 这是否意味着Arraylist是空的? –
那么,当你做'新的RecyclerViewAdapter(getActivity(),moviesDatas)时,你还没有初始化列表;' –
对不起,但我不明白你 我该怎么办? –