Лучший способ отображения потоковых данных в Android Listview - PullRequest
6 голосов
/ 18 июля 2011

Мы пытаемся отобразить данные таблицы в виде списка.Данные состоят из 8 столбцов и около 50 строк.За один второй период приходит примерно 8 обновленных данных.(то есть: обновите row2-column5 до чего-либо.) Каждый раз, когда появляются новые данные, мы обновляем выделенные ячейки и вызываем datasetchanged() адаптера, что вызывает некоторые проблемы с производительностью и прокруткой.

Мой вопросis:
Как лучше всего отображать потоковые данные в Android с помощью стандартных виджетов?

Ответы [ 2 ]

2 голосов
/ 19 июля 2011

Вы можете попробовать обновить только те элементы, которые нуждаются в обновлении. Для этого вам понадобится положение данных в просмотре списка.

private void updateData(int position)
{
    int firstItem = listView1.getFirstVisiblePosition();
    View view = listView1.getChildAt(position - firstItem);
    TextView tv = (TextView)view.findViewById(R.id.textview);
    tv.setText("Example Text");
}
0 голосов
/ 19 июля 2011

Я бы написал свой собственный Курсор и подключил его к CursorAdapter и AdapterView, или ... просто использовал MatrixCursor .MatrixCursor позволяет добавлять новые «строки».Затем вы можете позвонить onChange() и сообщить, что ваши данные изменились.

...