做开发的时候,我们常常把listview放中间,然后底部放置一个edittext控件,这样导致editext控件获得焦点的时候,输入法弹出,Edittext控件上移,挡住了listview的部分数据,这样不太美观。所以,我们需要让listview也跟着上移,所以需要:
方法一:在xml文件中,设置listview属性时候加上这句就ok了
android:transcriptMode="normal";
方法二:在程序中加入语句:
listView.setTranscriptMode(ListView.TRANSCRIPT_MODE_NORMAL);
如果想让listview上移,即listview随item的增加而向上滚动。
listView.setTranscriptMode(ListView.TRANSCRIPT_MODE_DISABLED);
数据item仍然增加不滚动,listview数据刷新后保持原来的位置,
在下拉刷新的时候,设置
listview.setTranscriptMode(AbsListView.TRANSCRIPT_MODE_DISABLED);
然后计算下原来的位置,数据刷新Adapter.notifyDataSetChanged();接着就是设置listview.setSelection(index),这样基本是平滑的,没有跳动。