2017-12-18 14 views
2

json 데이터에 따라 표시되는 항목 및 행 크기가 다른 json 데이터 파일이 있지만 행 크기가 RecyclerView과 같아야합니다.RecyclerView에서 동일한 행 높이를 설정하는 방법은 무엇입니까?

어떻게 실현할 수 있습니까? GridLayoutManager에 대해서만 발견되었지만 그 요구 사항을 충족시키지 못했습니다. 어떤 도움이 필요합니까?

내 활동 항목 디자인에이 코드를 사용하고 있습니다.

mRecyclerView.setItemAnimator(new DefaultItemAnimator()); 
     mRecyclerView.addItemDecoration(new DividerItemDecoration(mContext, LinearLayoutManager.VERTICAL)); 
     mRecyclerView.addItemDecoration(new EqualSpacingItemDecoration(16,EqualSpacingItemDecoration.VERTICAL)); 
+1

한 가지 해결 방법은 단 하나의 열이있는'GridLayoutManager'을 사용하는 것입니다. – MHogge

+4

현재 출력의 스크린 샷을 첨부 할 수 있습니까? –

+1

선형 레이아웃 관리자를 사용하여 텍스트보기 데이터 크기가 다르기 때문에 행 크기가 데이터에 따라 소비되지만 수정해야합니다. – ashish

답변

0

당신은 당신의 ViewHolder 생성자 내에서 각 항목의 높이를 설정할 수 있습니다 mHeight 원하는 항목 높이의 정수 값입니다

TableRow.LayoutParams params = new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, mHeight); 
itemView.setLayoutParams(params); 

합니다.

코드의 경우는 다음과 같을 것이다 :

private int mHeight = 100; 

public class MyViewHolder extends RecyclerView.ViewHolder { 
    public TextView userName; 
    public CardView cardView; 

    public MyViewHolder(View view) { 
     super(view); 
     userName = (TextView) view.findViewById(R.id.user_temp); 

     TableRow.LayoutParams params = new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, mHeight); 
     view.setLayoutParams(params); 

    } 
}