android避免弹出软键盘遮盖listview

来源:互联网 发布:applocale类似的软件 编辑:程序博客网 时间:2024/06/05 11:28

做开发的时候,我们常常把listview放中间,然后底部放置一个edittext控件,这样导致editext控件获得焦点的时候,输入法弹出,Edittext控件上移,挡住了listview的部分数据,这样不太美观。所以,我们需要让listview也跟着上移,所以需要:

方法一:在xml文件中,设置listview属性时候加上这句就ok了android:transcriptMode="normal";

方法二:在程序中加入语句:

listView.setTranscriptMode(ListView.TRANSCRIPT_MODE_NORMAL);



如果想让listview上移,即listview随item的增加而向上滚动。

listView.setTranscriptMode(AbsListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);


如果不想让listview上移,即不让listview随item的增加而向上滚动。

listView.setTranscriptMode(ListView.TRANSCRIPT_MODE_DISABLED);<span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">//</span><span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">数据item仍然增加  listview</span><span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">不滚动,</span>



listview数据刷新后保持原来的位置,

在下拉刷新的时候,设置listview.setTranscriptMode(AbsListView.TRANSCRIPT_MODE_DISABLED);

然后计算下原来的位置,数据刷新Adapter.notifyDataSetChanged();

接着就是设置listview.setSelection,这样基本是平滑的,没有跳动。体验不错哦




0 0
原创粉丝点击