2016-07-29 74 views
0

我只是一個Android初學者&嘗試與ViewHolder模式RecyclerView與ViewHolder模式

與樣品在制定RecyclerView:在實施代碼https://guides.codepath.com/android/using-the-recyclerview#create-the-recyclerview-within-layout

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/rvContacts" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 

</RelativeLayout> 

是要求在res/layout/activity_users.xml中實施

我已經使用Basic A創建了項目ctivity &有文件

activity_main.xml中& content_main.xml

是activity_users.xml其他自定義文件?或默認文件? 你能告訴我它應該在哪裏實現上面的代碼?

+0

以上佈局是您的活動佈局,只需在您的活動佈局中放置回收站即可。否則使用該佈局作爲活動佈局 –

+0

將此代碼放入主活動xml – KrishnaJ

+0

您的意思是activity_main.xml? –

回答

1

一旦你定義了你的RecyclerView,你必須定義單行佈局。然後,你可以在你的適配器中引用它。喜歡它:

public class ContactAdapter extends 
     RecyclerView.Adapter<ContactAdapter.ContactViewHolder> { 

    private List<ContactInfo> contactList; // your item list 

    public ContactAdapter(List<ContactInfo> contactList) { 
     this.contactList = contactList; 
    } 

    @Override 
    public int getItemCount() { 
     return contactList.size(); 
    } 

    @Override 
    public void onBindViewHolder(ContactViewHolder contactViewHolder, int i) { 
     // binding 
    } 

    @Override 
    public ContactViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) { 
     View itemView = LayoutInflater.from(viewGroup.getContext()). 
     inflate(**your_row_layout**, viewGroup, false); 
     return new ContactViewHolder(itemView); 
    } 

     public static class ContactViewHolder extends RecyclerView.ViewHolder { 
     ... 
    } 
    } 

希望它可以幫助你。

0

您可以在content_main佈局中添加回收站視圖。或者,如果您不想複雜化,請刪除activity_main中content_main的引用,並在activity_main本身中添加回收器視圖。 在您的BaseActivity中使用activity_main。

相關問題