Проблема в том, что при скроллинге сбивается порядок отображение данных.
ArrayAdapter использует данные с List<Item>
Класс Item содержит порядковый номер и html код.
При первоначальной загрузке, видимые данные отображаются корректно, а вот после скроллинга вверх/вниз все сбивается и данные отображаются не по порядку и с дублированием. Если не загружать данные в WebView, то порядковые номера отображаются корректно даже при скроллинге.
Ниже приведен код реализации адаптера:
Код: Выделить всё
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Holder holder;
View row = convertView;
Item item = getItem(position);
if (row == null) {
row = layoutInflater.inflate(R.layout.item, null);
holder = new Holder();
holder.textView = (TextView) row.findViewById(R.id.textView);
holder.webView = (WebView) row.findViewById(R.id.webView);
row.setTag(holder);
} else {
holder = (Holder) row.getTag();
}
holder.textView.setText(item.getItemNumber());
holder.webView.loadData(item.getItemMessage(), "text/html; charset=UTF-8", null);
return row;
}
private class Holder {
TextView textView;
WebView webView;
}