请帮我一下,我已经创建了一个简单的recyclerview
,但我没有得到输出在屏幕上,它是空白 这是我的适配器类,我一直在试图调试这个整整一天没有成功,同样,也没有错误,而执行Recyclerview没有填充,空白屏幕
public class ContactAdapter extends RecyclerView.Adapter<ContactAdapter.ViewHolder>
{
private Activity context;
private LayoutInflater mLayoutInflater;
private List<Contact> contacts;
public ContactAdapter(Activity context)
{
this.context=context;
mLayoutInflater=(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
contacts = new ArrayList<>();
}
@Override
public ContactAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = mLayoutInflater.inflate(R.layout.contact,parent,false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(ContactAdapter.ViewHolder holder, int position) {
Contact contact = contacts.get(position);
holder.name.setText(contact.getName());
holder.email.setText(contact.getEmail());
}
@Override
public int getItemCount() {
return contacts.size();
}
static class ViewHolder extends RecyclerView.ViewHolder
{
TextView name,email;
ViewHolder(View itemView)
{
super(itemView);
name= (TextView)itemView.findViewById(R.id.name);
email=(TextView)itemView.findViewById(R.id.email);
}
}
}
这是我的mainActivity类别
public class MainActivity extends AppCompatActivity {
RecyclerView recyclerView;
ContactAdapter adapter;
List<Contact> contacts = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView= (RecyclerView) findViewById(R.id.recyclerView);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
adapter=new ContactAdapter(this);
Contact c1=new Contact("potato","[email protected]");
adapter.setHasStableIds(true);
recyclerView.setAdapter(adapter);
contacts.add(c1);
adapter.notifyDataSetChanged();
}
}
设置适配器后,您正在添加数据试图在完全添加数据后尝试设置适配器,或者在添加联系人(即添加contacts.add(c1)后调用notifiyDataSetChanged(); – Killer
之后行contacts.add(c1)我已添加adapter.notifyDataSetChanged();但仍然没有结果 –