Android: использование notifyDataSetChanged и getLastVisiblePosition - когда listView действительно обновляется? - PullRequest
1 голос
/ 18 мая 2011

Я хочу использовать getLastVisiblePosition () и, очевидно, он не дает мне правильное число после вызова этого метода (notifyDataSetChanged). Я думаю, что этот метод только уведомляет мнение о том, что есть изменение, но изменение срабатывает позже.

Когда представление обновляется, есть ли событие, которое я могу использовать и вызвать мой метод, используя getLastVisiblePosition?

Пожалуйста, помогите или скажите, что я делаю не так;)

Спасибо Danail

1 Ответ

4 голосов
/ 18 мая 2011

Да, если вы запускаете notifyDatasetChanged(), вам нужно поставить в очередь операцию в post, потому что представление отображается асинхронно:

     listView.post(new Runnable() { 
       public void run(){ 
         lastPos = listView.getLastVisiblePosition();
       } 
     });
...