Вопрос

Шаблон ViewHolder улучшает частоту кадров прокрутки ListView, как показано в следующем примере:https://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List14.html

Можно ли сохранить этот шаблон, используя разные виды представлений для разных строк?

Другими словами, можно ли сделать что-то вроде:

 public View getView(int position, View view, ViewGroup parent) {  
     // calculate viewID here
     if (view == null || *view is not null but was created from different XML than viewID* ) { 
         view = mInflater.inflate(viewId, null);  
Это было полезно?

Решение

Да, хотя гораздо лучше переопределить getViewTypeCount() и getItemViewType() в вашем адаптере.Это научит пул объектов Android возвращать вам только строку правильного типа. getView().

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top