我有一个带有Pull to Refresh的ListView。刷新ListView后,它将移至顶部。但我想显示新添加到ListView的项目。如何实现它,任何人都可以帮助我。提前谢谢。
答案 0 :(得分:2)
使用此属性 android:stackFromBottom =“true”,因为它始终在列表视图底部添加新项目。如下面的代码,
<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="40dp"
android:divider="@null"
android:stackFromBottom="true" >
</ListView>
并在代码中再添加一项内容,
[listView].smoothScrollToPosition([adapter].getCount() - 1);
答案 1 :(得分:1)
您可以向适配器添加reFill
方法,例如:
public void reFill(List<MyData> newData){
this.myData.clear();
this.myData.addAll(newData);
}
因此,在刷新ListView并获取新数据后,您可以调用此适配器方法并设置新数据,并在适配器上调用notifyDataSetChanged()
。如果你这样做,ListView不会移到顶部。
答案 2 :(得分:1)
我认为除了Ando Masahashi的答案之外,这个主题还有你想要的答案:https://stackoverflow.com/a/3505869/1506369