Android中软键盘弹出时关于布局的问题
解决办法:
方法一:在你的activity中的oncreate中setContentView之前写上这个代码getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
方法二:在项目的AndroidManifest.xml文件中界面对应的<activity>里加入android:windowSoftInputMode="stateVisible|adjustResize",这样会让屏幕整体上移。如果加上的是
android:windowSoftInputMode="adjustPan"这样键盘就会覆盖屏幕。
方法三:把顶级的layout替换成ScrollView,或者说在顶级的Layout上面再加一层ScrollView的封装。这样就会把软键盘和输入框一起滚动了,软键盘会一直处于底部。
注:方法一和二应该是同一种方法,不过一个是在代码里实现一个是在xml文件里实现。可能会应为1.5和之前的版本不支持该方法。但是方法三是肯定没有问题的。
文主要介绍Android中如何解决输入法键盘和activity页面遮挡的问题。
总结:
不希望遮挡设置activity属性android:windowSoftInputMode="adjustPan"
希望动态调整高度android:windowSoftInputMode="adjustResize"
问题:
我原来的问题是,对于腾讯微博的OAuth验证webView,弹出软键盘后,输入框上移就看不到输入框了,后发现Webview放到了ScrollView中,将ScrollView改为LinearLayout问题解决了,不会在弹出软键盘后大幅滚动。不过下面还是详细介绍下软键盘和activity页面遮挡的问题。
详细:
通常情况下如果我们在一个输入框输入内容,输入法键盘弹出时,activity自动设置高度,相当于在activity向上滚动了添加了输入法键盘的高度。但有时可能淹没当前的输入框,如果希望输入法键盘弹出时不自动向上挤压activity,在activty中设置属性android:windowSoftInputMode="adjustPan"即可,如下:
Java代码
<activity android:name="testActivity"
android:windowSoftInputMode="adjustPan">
设置属性为android:windowSoftInputMode="adjustResize"即可自动调整高度。
属性stateVisible表示默认显示输入法键盘,其他属性见:android:windowSoftInputMode
adjustPan同样存在问题,即可能需要关闭软键盘,定位被挡住的输入框,我希望的是介于adjustPan和adjustResize之间的解决方案,即软键盘会对activity有一定挤压,但是焦点所在输入框始终会显示在屏幕上,有会的朋友欢迎留言分享,个人觉得可能的解决方案是new一个LinearLayout,重写其中的
Java代码
protected void onSizeChanged(int w, int h, int oldw, int oldh)
方法,使得h参数动态变化达到效果,但较耗时,暂不想尝试了。
转载:http://blog.csdn.net/stonesharp/article/details/7648384
转载于:https://www.cnblogs.com/roccheung/p/5797465.html
Android中软键盘弹出时关于布局的问题相关推荐
- Android中软键盘弹出可能遮挡布局
当在Android的layout设计里面如果输入框过多,则在输入弹出软键盘的时候,下面的输入框会有一部分被软件盘挡住,从而不能获取焦点输入. 解决办法: 方法一:在你的activity中的oncrea ...
- Android 软键盘弹出时把布局顶上去,控件乱套解决方法
Android 软键盘弹出时把布局顶上去,控件乱套解决方法 参考文章: (1)Android 软键盘弹出时把布局顶上去,控件乱套解决方法 (2)https://www.cnblogs.com/zhuj ...
- Android 软键盘弹出时布局内指定内容上移实现及问题解决
Android 软键盘弹出时布局内指定内容上移实现及问题解决 参考文章: (1)Android 软键盘弹出时布局内指定内容上移实现及问题解决 (2)https://www.cnblogs.com/as ...
- Android 软键盘弹出时把原来布局顶上去的解决方法
Android 软键盘弹出时把原来布局顶上去的解决方法 参考文章: (1)Android 软键盘弹出时把原来布局顶上去的解决方法 (2)https://www.cnblogs.com/Joanna-Y ...
- 简单可用 Android 安卓软键盘弹出、隐藏监听方法回调
工具类 import android.app.Activity import android.graphics.Rect import android.view.ViewTreeObservercla ...
- 软键盘弹出时popwindow_PopupWindow与软键盘冲突
一.说明 笔记主要是记录一些本人在开发当中的学习和使用笔记.笔记内容包含一些本人觉得重要的知识点.本人易犯的错误等. 由于本人水平有限,其中出现的错误或者不合理的地方望各位读者多多包含,并指出其中不合 ...
- android实现软键盘弹出,editText随键盘上移,背景不动
android实现软键盘弹出,editText随键盘上移,背景不动 前段时间有个妹子问我如题的需求,我就想,这种东西网上不是很多吗,自己试过才发现,基本都不行,各种设置配置文件的windowSoftI ...
- Android判断软键盘弹出并隐藏的简单完美解决方案
Android判断软键盘弹出并隐藏的简单完美解决方案 参考文章: (1)Android判断软键盘弹出并隐藏的简单完美解决方案 (2)https://www.cnblogs.com/thare1307/ ...
- android软键盘把布局顶上去,Android 软键盘弹出时把原来布局顶上去的解决方法
键盘弹出时,会将布局底部的导航条顶上去. 解决办法: 在mainfest.xml中,在和导航栏相关的activity中加: android:name=".filing.MainActivit ...
最新文章
- UML中聚合和组合的关系(笔记)
- yml不识别_SpringBoot(2):yml配置文件和集成其他框架
- 定制CentOS 6.3 自动安装盘
- 不越狱无硬件,轻松搞定iPhone投影与录屏
- struts,ognl,valuestack
- Linux shell的和||
- Administrator用户被禁用
- 华为mate30怎么申请鸿蒙内测,华为新系统启动内测,mate30系列尝鲜,网友:羡慕...
- 【java基础知识】判断字符串不为空
- Atitit 软件项目的一整套解决方案(gui界面,中间,存储数据库,图像处理,全文搜索)attilax总结
- 两种前端在线json编辑器方案(无法解决number精度丢失问题)
- 基于chrome内核的微软Edge浏览器~
- Solidworks教程:solidworks常用的十个技巧
- rxbus 源码_RxBus 这个 RxBus 稳如老狗 @codeKK Android开源站
- ReactiveCocoa简介翻译
- OpenWrt 安装中文语言包
- Flutter 启动页适配
- HTCVIVE无线套装安装后unityvr项目无法在头盔中显示
- 【打卡-Coggle竞赛学习2023年1月】文本相似度匹配
- 硅谷华人AI精英大批回国成趋势,BAT在美设「挖人」据点,猎头暗中潜伏
热门文章
- 对抗攻击之SMI-FGSM:北航提出用空间动量提高对抗迁移性
- 为对抗训练的理论工作添砖加瓦:选择核心子集进行训练,大大缩短训练时间...
- 小目标检测的福音:Stitcher,简单又有效
- 紫为云 2020春招开启!算法职位20K-50K!
- Facebook AI 提出10亿级数据规模的半监督图像分类模型,ImageNet测试精度高达81.2%!...
- 三相滤波器怎么接线_数字滤波器设计的一般套路
- 2020年 2 篇异常算法最佳综述
- 卡内基·梅隆大学新提出AdaScale:自适应缩放实现视频对象实时检测算法
- 第5章 数据的共享与保护
- kali linux中文乱码解决,kali-google-chrome中文乱码问题解决方法