什么时候系统调用适配器的getview函数
我想知道什么时候getView函数会被调用,case我想刷新listview,并且不知道该怎么做。例如,listView中显示了7个项目,现在,我想将其更改为7个其他日期和图像。什么时候系统调用适配器的getview函数
刷新列表视图调用
Adapter.NotifyDataSetChanged()
编辑
一般ListView的列表项将有同样的高度,如果你可以计算高度,并呼吁
ListView.scrollBy(x, y);
即使是简单的,你可以致电
ListView.smoothScrollToPosition(position);
,如果你知道位置
列表视图应该呈现你的适配器添加新项目(前提是你调用notifydatasetchanged())
thx对于如此快速的回答,但问题是,NotifyDataSetChanged()在适配器中的数据更改时很有用?但在我的情况下,适配器中的数据不会改变,我在其中放置了50个项目,而listview只能显示10个项目,现在我想显示接下来的10个项目,我该怎么办? thx再次。 – zyunchen
smoothScrollToPosition(位置)可能会添加三个项目..我不知道为什么,这让我觉得它只显示它首先创建的视图。 – zyunchen
我认为,adapterdataset没有变化,原因我已经添加了所有的数据,但listView只能显示10项数据,我不想显示接下来的10项,notifydatasetchanged()会有帮助吗?我尝试过但徒劳无功。 – zyunchen
thx为您的答案,我确实使用smoothscrollToPosition方法,但结果是,它显示更多的新项目,但只有3多,并且,虽然图像改变。不能得到更多,我可以模式项目的背景,因为我不知道如何获得项目视图,getChildAt(位置)会有帮助吗?它会显示我nullpointer异常... thx很多 – zyunchen
我发现它确实有效,thx很多 – zyunchen