에서 무슨 일이 일어나고 있는지 나는이의 getView의 어댑터 확장 재정에 많은 참조 : 나는 의미 무슨 일이 일어나고 있는지 얻을정확히의 getView
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.whatever, null);
}
- "convertView가 null의 경우 다음을 부풀려",하지만 난 정말하지 않습니다 이해 왜 - convertView가 null 일까, 어떤 상황에서 이미 View가 될까?
도 마찬가지지만 위의 내용과 관련하여 - 팽창 방식 중에 정확히 무엇이 발생합니까? 나는 그것이 일반적으로 무엇을 알고 ("팽창"뷰 리소스를 구문 분석하고 인구가 될),하지만 그것을 완전히 grok 수없는 ... 전체 내용
TYIA
어댑터는 AdapterView에서 사용됩니다 ... AdapterView의 일부 구현 (AbsListView 및 기타) getView를 사용하여 ... 잘 ...보기, 어댑터 항목에 대한 ...이 구현에 많은 최적화가 ... 그래서 AbsListView (및 기타) 새보기를 만들지 않지만 오히려 사용하지 않는 재사용. .. 내 말은하지만 "사용하지 않는"의미는 ... 예제를 보여 드리겠습니다 ... ListView에는 약 100 개의 요소가 있어야하지만 ListView는 convertView를 사용하여 fx getView를 호출하므로 한 번에 5 개만 표시됩니다. == null == 약 7 회 null 다음 convertView로 사용하지 않은 것을 가리 키려고합니다. – Selvin