2016-12-09 3 views
0

Meine RecyclerView mit Abschnitt zeigt nur 6 Elemente von allen zwei Abschnitten, aber es gibt noch mehr Elemente in meinem Gerät ArrayList.RecyclerView mit Abschnitten zeigt nur angezeigte Elemente

Das Recycler Layout ist bereits wrap_content in der Höhe

hier meine LinearRecyclerAdapter mit der Sections sind:

public class LinearRecyclerAdapter extends RecyclerView.Adapter<LinearRecyclerAdapter.ViewHolder> { 

ArrayList<Category> mCategory = new ArrayList<>(); 
ArrayList<Category> mCopyCategory = new ArrayList<>(); 
String tablequery = null; 
Activity mActivity; 
GridRecyclerAdapter mAdapterGrid; 

public LinearRecyclerAdapter(Activity activity, ArrayList<Category> category, String table) { 
    mActivity = activity; 
    mCategory = category; 
    tablequery = table; 
} 

@Override 
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
    View v = LayoutInflater.from(parent.getContext()) 
      .inflate(R.layout.catrecyclerlayout, parent, false); 
    ViewHolder viewHolder = new ViewHolder(v); 
    mCopyCategory.clear(); 
    mCopyCategory.addAll(mCategory); 
    return viewHolder; 
} 

@Override 
public void onBindViewHolder(final ViewHolder holder, final int position) { 
    holder.position = position; 
    holder.category = getCategory(position); 
    holder.device_array = getDevices(position); 
    holder.isInt = getBool(position); 

    if (position != 0) 
     holder.tv_category.setText(holder.category); 
    else 
     holder.mLinearLayout.setVisibility(View.GONE); 

    mAdapterGrid = new GridRecyclerAdapter(mActivity, holder.device_array, tablequery, holder.isInt); 
    holder.recyclerView.setAdapter(mAdapterGrid); 

    holder.recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { 
     @Override 
     public void onScrollStateChanged(RecyclerView recyclerView, int newState) { 
      super.onScrollStateChanged(recyclerView, newState); 
      mAdapterGrid.notifyDataSetChanged(); 
     } 
    }); 
} 

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

public String getCategory(int position) { 
    return mCategory.get(position).getmCategory(); 
} 

public ArrayList<Devices> getDevices(int position) { 
    return mCategory.get(position).getmDevices(); 
} 

public boolean getBool(int position) { 
    return mCategory.get(position).getisInt(); 
} 

class ViewHolder extends RecyclerView.ViewHolder { 

    public int position; 
    public String category; 
    public ArrayList<Devices> device_array; 
    public boolean isInt = false; 

    public TextView tv_category = null; 
    public RecyclerView recyclerView = null; 
    public RecyclerView.LayoutManager mLayoutManager = null; 
    public LinearLayout mLinearLayout = null; 
    public View mView; 

    public ViewHolder(View itemView) { 
     super(itemView); 
     mView = itemView; 
     mLinearLayout = (LinearLayout) itemView.findViewById(R.id.category_ll); 
     recyclerView = (RecyclerView) itemView.findViewById(R.id.recycler_view); 
     tv_category = (TextView) itemView.findViewById(R.id.tv_category); 

     // Calling the RecyclerView 
     recyclerView.setHasFixedSize(true); 

     // The number of Columns 
     mLayoutManager = new GridLayoutManager(mActivity, 2); 
     recyclerView.setLayoutManager(mLayoutManager); 
     recyclerView.setNestedScrollingEnabled(false); 
    } 
} 
} 

Und hier ist ein Screenshot Ihnen zu zeigen, was ich meine

Ich hoffe jemand kann mir helfen, ich versuchte alles, was ich weiß :(

Shows 6 items by all two sections

+0

zu setzen Was ist die Größe der mCategory Liste ?, Sind Sie überprüft? –

+0

Kategorie Größe ist 2 –

+0

wenn catergory Liste Größe 2, dann wie seine Show 6? –

Antwort

0

Gelöst meine Frage

ich von einem relativelayout vergessen hatte, die Höhe -.- wrap_content

Verwandte Themen