在下面的描述中,编辑框的maxLine都设定为10。

在信息列表界面中,编辑框在RelativeLayout中定义。编辑框上边(above)的列表组件的高度不会缩小为0,导致显示出现一点问题。

当信息列表中有信息时,当输入一定行数,比如超过9行,编辑框上边会出现重叠的内容。

 

当信息列表中没有信息时,编辑框上边没有任何重叠。

 

将RelativeLayout改成LinearLayout,在编辑框上边的listView控件的height设定为0dip且weight设定为1。

将Activity都设定为adjustResize模式。在软键盘弹出时,列表控件的高度会逐渐缩小直至为0。

比较两个截图的区别。

在信息列表界面,编辑框将列表控件的区域全部占领。占领之后还是不够将编辑框全部显示。以至于编辑框下边有一小部分被软键盘挡住。

在新建信息界面,编辑框被缩小了,使得编辑框不会被软键盘挡住。查看布局定义,新建信息的编辑框放在FrameLayout中。

将Activity设定为adjustPan模式之后再做比较,如下所示。

 

查看截图。当软键盘显示出来时,如果当前光标被软键盘挡住,整个屏幕会往上平移,直到可以看到光标(即可以在编辑框中输入内容)为止。所以会出现这个现象:编辑框一部分被软键盘挡住,只有光标及其上边的部分不会被软键盘挡住。

不管屏幕布局是RelativeLayout还是LinearLayout,当Activity设定为adjustPan模式时,效果都是一样的。点击编辑框时,软键盘弹出来。如果光标被软键盘挡住,那么整个屏幕往上平移,直至看到光标为止。 


布局文件定义见:比较MessageListActivity使用不同的layout

adjustResize和adjustPan的比较的更多相关文章

  1. adjustResize模式下ExpandaleListView中输入框焦点错乱及布局底部的导航栏被顶在键盘上方的处理

    为了更好的用户体验,煎熬了许久,得到这么个解决方案.在此记录下来,以供后来者参考. 第一部分 清单文件中组件activity的android:windowSoftInputMode属性值的含义: [A ...

  2. AndroidManifest.xml详解(上)

    本文编辑整理自:http://blog.163.com/hero_213/blog/static/39891214201242835410742/ 一.关于AndroidManifest.xml    ...

  3. android:windowSoftInputMode及其他部分属性用法

    本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处! 今天我们来讲讲android:windoSoftInputMode的用法,许多同学会为软键盘的弹出. ...

  4. 日积月累:EditText软键盘的显示和隐藏

    在工作过程中,常常会遇见需要根据自己的需求,控制文本框的键盘显示和隐藏. 通过查阅Android文档,介绍可以通过在清单文件中<activity>元素中添加android:windowSo ...

  5. Android中的windowSoftInputMode属性详解

    这篇文章主要介绍了Android中的windowSoftInputMode属性详解,本文对windowSoftInputMode的9个属性做了详细总结,需要的朋友可以参考下     在前面的一篇文章中 ...

  6. 【Android开发经验】android:windowSoftInputMode属性具体解释

    本文章来自CSDN博客:http://blog.csdn.net/zhaokaiqiang1992.转载请注明地址! 在前面的一篇文章中,简单的介绍了一下怎样实现软键盘不自己主动弹出,使用的方法是设置 ...

  7. ionic3 调用摄像头 当键盘弹出时候 出现摄像头 背景

    iOS 端毫无 bug,Android 端却出现了问题.当软键盘弹出后,Android 端的 tabs 移到了软键盘的上面,再仔细一看,整个界面都被压扁了,输入框也不知道去哪儿了. 于是去翻 Ioni ...

  8. Android application 和 activity 标签详解

    extends:http://blog.csdn.net/self_study/article/details/54020909 Application 标签 android:allowTaskRep ...

  9. EditText被键盘遮得住

    如果在Activity中的布局的下方有EditText,获取焦点弹出软键盘的时候,如果不做处理,软键盘可能会遮挡输入框,用户提现不好,网上也有很多人提出结局方案,这里就分析一下解决的效果. 需要用到E ...

随机推荐

  1. 这篇NLP文章不错,BERT,好好读一下

    http://dy.163.com/v2/article/detail/DU5PE7V30511ABV6.html 狂破11项记录,谷歌年度最强NLP论文到底强在哪里?    

  2. 为什么你作为一个.NET的程序员工资那么低?(转)

    最近看到很多抱怨贴,也许有一定的道理,但是你想过没,为什么大部分.NET程序员工资相对低?我个人是这么看的: 大批半罐子水的程序员,永远被局限在.NET的原始的小圈圈里.前端不会(你放弃了一项很重要的 ...

  3. "Your computer could not be joined to the domain. You have exceeded the maximum number of computer accounts you are allowed to create in this domain. Contact your system administrator to have this limit reset or increased."

    用一个普通的域帐号玩私有云的时候,遇到了如下的报错. "Your computer could not be joined to the domain. You have exceeded ...

  4. Unique Paths leetcode java

    题目: A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). ...

  5. 用css3实现风车效果

    前面讲过css3可以替代很多js实现的效果,其实很多时候纯css3甚至可以替代图片,直接用css3就可以画出一些简单的图片.虽然css3画出来的图片效果可能不如直接用图片的好,实现起来也比较复杂,最麻 ...

  6. Github用.gitignore忽略指定文件

    .gitignore Github提供.gitignore这种功能,可以自己指定哪些文件可以不被管理.具体方法是在版本管理的根目录下(与.git文件夹同级)创建一个.gitignore. 应用实例 项 ...

  7. EF 数据类型 0xA7 的数据长度或元数据长度无效

    测试方法 TestProject1.SysTest.HtmlAnalysisTest12 引发异常:  System.Data.UpdateException: 更新项时出错.有关详细信息,请参阅“I ...

  8. CentOS7.1 Liberty云平台之环境准备(2)

    一.各节点配置Openstack源库 yum install centos-release-openstack-liberty -y 升级YUM源库 yum upgrade 安装Openstackcl ...

  9. 清空npm缓存

    nodejs 清空 npm 缓存 npm cache clean -f

  10. $(...).modal is not a function

    bootstrap中调用$(...).modal 方法 提示一个错误 is not a function 检查HTML结构发现,是因为使用了多个Jquery版本,产生了冲突. 解决办法:删掉一个Jqu ...