사용자 지정 어댑터와 함께 사용하는 사용자 지정 listview가 있습니다. 앱이 처음 열리면 처음 몇 개의 항목이 올바르게 표시됩니다. 나는 아래로 스크롤하기 시작할 때, 나는의 getView() 메소드에서 NullPointerException이 얻을 :스크롤 할 때 사용자 지정 ListView getView() 메서드 nullPointerException
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ListViewItem item = items.get(position);
View vi = convertView;
if (item.Type.equals("Homework")) {
if (convertView == null)
vi = inflater.inflate(R.layout.item_row_homework, null);
ImageView imgThumbnail = (ImageView) vi
.findViewById(R.id.homework_imgThumbnail);
TextView txtTitle = (TextView) vi
.findViewById(R.id.homework_txtTitle);
TextView txtSubTitle = (TextView) vi
.findViewById(R.id.homework_txtSubTitle);
imgThumbnail.setImageResource(item.ThumbnailResource);
txtTitle.setText(item.Title);
txtSubTitle.setText(item.SubTitle);
}
if (item.Type.equals("Study")) {
if (convertView == null)
vi = inflater.inflate(R.layout.item_row_study, null);
ImageView imgThumbnail = (ImageView) vi
.findViewById(R.id.study_imgThumbnail);
TextView txtTitle = (TextView) vi
.findViewById(R.id.study_txtTitle);
TextView txtSubTitle = (TextView) vi
.findViewById(R.id.study_txtSubTitle);
imgThumbnail.setImageResource(item.ThumbnailResource);
txtTitle.setText(item.Title);
txtSubTitle.setText(item.SubTitle);
}
if (item.Type.equals("Project")) {
if (convertView == null)
vi = inflater.inflate(R.layout.item_row_project, null);
ImageView imgThumbnail = (ImageView) vi
.findViewById(R.id.project_imgThumbnail);
TextView txtTitle = (TextView) vi
.findViewById(R.id.project_txtTitle);
TextView txtSubTitle = (TextView) vi
.findViewById(R.id.project_txtSubTitle);
imgThumbnail.setImageResource(item.ThumbnailResource);
txtTitle.setText(item.Title);
txtSubTitle.setText(item.SubTitle);
}
return vi;
}
그리고 내가 살펴 보았다
imgThumbnail.setImageResource(item.ThumbnailResource);
라인의 세 가지 경우 중 하나에 온다 이것에 대한 다른 질문이 있지만 정확히 무슨 일이 일어나는지 이해하지 못했습니다.
감사합니다.
'R.id.homework_imgThumbnail' 및'R.id.study_imgThumbnail' 및'R.id.project_imgThumbnail'에 대한 findViewById가 null을 반환하지 않는 것을 다시 확인 했습니까? – rbarriuso
귀하의 logcat을 게시하십시오. NPE가 있다고 logcat이 알려준 줄을 확인하십시오. –
@epsilondelta 질문에 대한 답변을 구할 수 있습니까? – rbarriuso