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

更多相关文章

  1. WP7和Android控件对照表
  2. Android(安卓)TCP socket通信
  3. 通过经度和纬度算出距离
  4. Android(安卓)Rxjava+Retrofit网络请求框架封装(二)
  5. android屏幕刷新显示机制
  6. Android(安卓)studio教程学习笔记2——线性布局LinearLayout
  7. Android的四大组件的作用
  8. 设置DrawerLayout不可以点击后面的控件
  9. 自学Android(安卓)----- Activity的生命周期

随机推荐

  1. ThinkPHP中的find和select的区别
  2. 社交登录实现的数据库结构?
  3. 如何在jQuery Mobile页面中提交表单?
  4. [php]0-1背包动态规划
  5. php.ini与php-fpm.conf配置文件的区别
  6. PHP根据数组的值分组
  7. PHP扩展的URL Library快速入门
  8. Json调用JSON.parse:意外结束数据
  9. PHP+Apache环境安装与配置
  10. php $_SERVER中的SERVER_NAME 和HTTP_HOS