String str11 = resp.getResponseValue(PacketField.IF_F_RES_MY_INFO_ACHIEVE_CURRENT_COUNT);
int totalCnt1 = Integer.parseInt(str11);
if(totalCnt1 > 0){
if(mList != null){
if (mList.getChildCount() > 0){
mList.removeAllViews();
}
}
/**
* 각 랭킹 정보 별 항목 설정
* */
for(int i = 0; i<totalCnt1; i++){
/**
*
* */
ResponseValueDataList data = resp.getListData(i, PacketField.IF_F_RES_LIST_ACHIEVEMENT);
// Log.v("dsadasdasdasda","data = "+data);
/**
* 랭킹 정보 설정 하기
* */
mList.addView(getListItemView(data), i);
}
}
}
}
return false;
}
private View getListItemView(final ResponseValueDataList data){
View view = null;
/**
* 리스트 항목 레이아웃 로딩
* */
LayoutInflater inflater = ((Activity) AchivementList.this).getLayoutInflater();
view = inflater.inflate(R.layout.result_page, null);
if(view != null){
LayoutParams lp = (LayoutParams)new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
view.setLayoutParams(lp);
TextView tv_date = (TextView)findViewById(R.id.ach_date);
TextView tv_name = (TextView)findViewById(R.id.ach_name);
ImageView ach_img = (ImageView)findViewById(R.id.ach_img);
name = data.getResponseValue(PacketField.IF_F_RES_ACHIEVEMENT_NAME); // 업적 이름
imageUrl = data.getResponseValue(PacketField.IF_F_RES_ACHIEVEMENT_IMAGE_URL); // 업적 아이콘 URL
date = data.getResponseValue(PacketField.IF_F_RES_ACHIEVEMENT_DATE); // 업적 달성 일자
if(mFileManager != null && ach_img != null){
mFileManager.getDownLoadImage(imageUrl, ach_img);
}
if(tv_date !=null)
tv_date.setText(date);
if(tv_name != null)
tv_name.setText(name);
}
return view;
}
=======================================================
샘플코드 부분중 Addview를 통해 반복적으로 view를 생성하는것인데
테스트 결과 첫 view만 getListItemView 함수 내용이 적용됐습니다.
그 이후 추가된 view는 추가만되고 settext가 적용이 되지 않았는데요..
그 이유를 알고 싶습니다 답변 부탁드립니다
TextView tv_date = (TextView)findViewById(R.id.ach_date);
TextView tv_name = (TextView)findViewById(R.id.ach_name);
ImageView ach_img = (ImageView)findViewById(R.id.ach_img);
위 부분들의 findViewById를 view.findViewById으로 바꿔보세요.