我想在 RecyclerView 中显示来自GitHubApi的数据,但我做不到。我可以在 ListView 中显示这些数据。我可以将 RecyclerView 与我自己的List<>
集合数据一起使用。当我想将 RecyclerView 与 Retrofit 一起使用时,我的应用程序会显示白屏而不是抛出错误。我无法解决这个问题。
call.enqueue(new Callback<List<P006StrongClass>>() {
@Override
public void onResponse(Response<List<P006StrongClass>> response, Retrofit retrofit) {
RecyclerView.Adapter adapter=new P006RecyclerViewAdapter(getApplicationContext(),response.body());
recyclerViewP006.setLayoutManager(new LinearLayoutManager(P006RetrofitRecyclerView.this, LinearLayoutManager.VERTICAL, false));
recyclerViewP006.setAdapter(adapter);
}
@Override
public void onFailure(Throwable throwable) {
}
});
这是我的 RecyclerView 适配器类:
public class P006RecyclerViewAdapter extends RecyclerView.Adapter<P006RecyclerViewAdapter.MyViewHolder2> {
LayoutInflater layoutInflater;
List<P006StrongClass> p006StrongClassList;
MyViewHolder2 myViewHolder2;
public P006RecyclerViewAdapter(Context context,List<P006StrongClass> p006StrongClassList) {
layoutInflater= (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
this.p006StrongClassList=p006StrongClassList;
}
@Override
public MyViewHolder2 onCreateViewHolder(ViewGroup parent, int viewType) {
View view= layoutInflater.inflate(R.layout.p006customrow, parent, false);
myViewHolder2=new MyViewHolder2(view);
return myViewHolder2;
}
@Override
public void onBindViewHolder(MyViewHolder2 holder, int position) {
P006StrongClass p006StrongClassTek=p006StrongClassList.get(position);
holder.textViewP006.setText(p006StrongClassTek.getId());
}
@Override
public int getItemCount() {
return 0;
}
@Override
public void onAttachedToRecyclerView(RecyclerView recyclerView) {
super.onAttachedToRecyclerView(recyclerView);
}
public static class MyViewHolder2 extends RecyclerView.ViewHolder{
TextView textViewP006;
public MyViewHolder2(View itemView) {
super(itemView);
textViewP006=(TextView)itemView.findViewById(R.id.textViewP006);
}
}