2016-12-09 7 views
0

を表示示しセクションとの私のRecyclerViewは、すべての二つの部分によってのみ6項目を示しているが、さらに多くのアイテムが私のデバイスのArrayListにあります。RecyclerViewはアイテムのみ

リサイクルレイアウトがすでに高さここ

wrap_contentでは、セクションと私のLinearRecyclerAdapterです:

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); 
    } 
} 
} 

そして、ここでは、私が

何を意味するかをお見せするためにスクリーンショットである私が誰かを願っています私を助けることができる私は

Shows 6 items by all two sections

:(知っているすべてのものを試してみました
+0

をwrap_contentする高さを設定するために1 relativelayoutで忘れていた私の質問

を解決し、あなたがチェックしていますか? –

+0

カテゴリサイズが2 –

+0

の場合、食べ物リストのサイズが2の場合、そのショーはどのように6ですか? –

答えて

0

私は?mCategoryリストのサイズは何-.-

関連する問題