마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 리싸이클러뷰 안에 리싸이클러뷰 2개 넣는것 질문입니다

0 추천

프래그먼트 안에 A 리싸이클러뷰에서 2개의 B,C 리싸이클러뷰를 불러오고자 하는데요,

그 2개의 B,C 리싸이클러뷰가 레이아웃이 다르고 불러와야 할 갯수도 다릅니다.

A 리싸이클러뷰 안에는 B 1개, C 3개씩 담아서 순차적으로 보여줘야 하기 때문에

아래와 같이 코드를 구성해봤는데요,

for문에 로그 찍어보고 마지막 notifydataset할때도 로그 찍어보면

값은 잘 들어가있는것같은데

A 리싸이클러뷰에 add된 횟수만큼 뷰가 반복이 되는데

모든 아이템이 전부다 마지막 데이터만 반복되어 보여지네요..

뭐가 문제일까요..?

 

mAllList.clear();
mThreeList.clear();
mOneList.clear();
int allsize = nineArrayList.size() + oneArrayList.size();

int one_size = oneArrayList.size();
int three_size = threeArrayList.size();
int one_order = 0;
int three_order = 0;

for(int i=1; i <= allsize; i+=10){
  All all = new All();
  mThreeList.clear();
  mOneList.clear();
  if(one_size != 0){
    if(one_order < one_size){
      mOneList.add(oneArrayList.get(one_order));
      one_order++;
    }
  }
  for(int j=1; j <= 3; j++){
    if(three_size != 0){
      if(three_order < three_size){
        mThreeList.add(threeArrayList.get(three_order));
        three_order++;
      }
    }
  }
  all.setThreeItemsInSection(mThreeList);
  all.setOneItemsInSection(mOneList);

  mAllList.add(all);
}

mAdapter_all.notifyDataSetChanged();
mAdapter_all.setSelectedPosition(0);

 

파르네제 (2,030 포인트) 님이 2018년 7월 16일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...