我想使用 getLastVisiblePosition(),显然在调用此方法 (notifyDataSetChanged) 后它没有给我正确的数字。我觉得这个方法只是通知 View 有变化,但是变化是在后面触发的。
当 View 更新时,是否有事件可以使用并触发我的方法,使用 getLastVisiblePosition?
请帮助或告诉我我做错了什么;)
谢谢 丹尼尔
最佳答案
是的,如果您运行notifyDatasetChanged()
,您需要在post
中对操作进行排队,因为 View 是异步呈现的:
listView.post(new Runnable() {
public void run(){
lastPos = listView.getLastVisiblePosition();
}
});
关于Android:使用 notifyDataSetChanged 和 getLastVisiblePosition - 当 listView 实际更新时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6044796/