android避免弹出软键盘遮盖listview

来源:互联网 发布:mac适合编程吗 编辑:程序博客网 时间:2024/05/22 04:56

做开发的时候,我们常常把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),这样基本是平滑的,没有跳动。

0 0