2011-11-05 3 views
1

사용자 지정 어댑터 (CheckBox 및 TextView)를 사용하여 사용자 지정 ListView를 구현했습니다. ContentView는 ListView 항목이 재활용 {항목이 삭제되었거나 표시되지 않는다고 말한 경우} 사용되는 것을 이해합니다. 그러나이 contentView에 대한 나의 이해는 모호합니다.BaseAdapter에서 getView 메서드의 contentView를 활용하는 방법

누군가이 BaseAdapter.getView()의 contentView 인수를 활용하는 방법을 설명 할 수 있습니까? listView의 항목이 삭제되면 어떻게됩니까?

감사합니다.

답변

0

일반 목록보기를 보면 모든 항목이 동일하게 보입니다 (= 같은 레이아웃 있음). 또한 XML을 사용하여 레이아웃을 작성하는 것은 값 비싼 (팽창)입니다.

여기서 ListView은 매우 간단합니다. 목록을 아래로 스크롤하면 한 항목이 맨 위에 숨겨지고 새 항목이 맨 아래에 표시됩니다. 이 시점에서 새롭게 표시되는 항목에 대해 값 비싼 XML 인플레이션을 방지하기 위해 방금 숨겨진 항목의 레이아웃이 제공됩니다. 모든 데이터를 이전 데이터로 가져 왔지만 효율성을 높이려면 처음부터 다시 빌드 할 필요가 없습니다. 새 데이터로 채우기 만하면됩니다. 그리고 그것은 전체 아이디어입니다. contentView (이 경우 안드로이드가 당신을 위해 기존 전망을에서)하지 null 경우

그냥 단지 새 항목에 대한 데이터를 추가,이 경우 확인합니다. null 인 경우 레이아웃을 처음부터 팽창시킵니다.

관련 문제