2010-08-22 3 views
0

저는 CommonsGuy에서 "Efficient Adapter"과 EndlessAdapter이 섞여 있고 getView()의 홀더가 null 인 경우가 있습니다."효율적인 어댑터"를 사용할 때 홀더가 null 일 때가 있습니다

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 

    ViewHolder holder; 

    if (convertView == null) { 
     convertView = inflater.inflate(R.layout.queue_item, null); 

     holder = new ViewHolder(); 
     holder.text = (TextView) convertView.findViewById(R.id.queueItemText); 
     holder.image = (ImageView) convertView.findViewById(R.id.queueItemImage); 
     convertView.setTag(holder); 
    } else { 
     holder = (ViewHolder) convertView.getTag(); 
    } 

    if (holder != null) { 
     holder.text.setText(queueItems.get(position).getTitle().getName()); 
    } else { 
     Log.e(context.getString(R.string.app_name), "holder is null for some reason ..."); 
    } 

    return convertView; 
} 

나는 그것을 인라인 붙여 오히려 큰의로, 내 수업 here 모두에 대한 코드의 나머지 부분을 넣었습니다.

전체 데이터 세트가로드되면 &을 위로 스크롤하면 행이 사라지고 다시 표시됩니다.

답변

0

내가 기억하는대로 몇 주 전에 업데이트 된 최신 EndlessAdapter을 사용하고 있는지 확인하십시오.

그게 도움이되지 않으면 문제를 복제하는 전체 프로젝트 (두 개 클래스가 아닌)를 줄 수 있다면 해결할 수 있습니다. EndlessAdapter 및 다른 구성 요소에 대한 지원을위한 기본 홈인 cw-android Google Group을 통해 저에게 연락하십시오.

+0

나는 github에서 0.2.1을 사용하고 있습니다. 다음과 같은 키를 사용할 수있는 Lovefilm 개발자 계정이없는 경우 문제를 복제해야합니다. 며칠 내로 Google 그룹을 통해 연락을 드리겠습니다. –

+0

@Stuart Grimshaw : "Lovefilm"에 대해 들어 본 적이 없기 때문에 dev 계정이 없다고 생각합니다. :-) 나는 샘플 프로젝트를 기다리고 있기 때문에 버그를 제거 할 수 있습니다. – CommonsWare

+0

사용할 수있는 계정이 있지만 신용 카드 세부 정보를 입력해야합니다. 분명히 원하지 않습니다 .- 외부 데이터 소스를 사용하지 않고 문제를 재현하려고합니다. –

관련 문제