android 键盘遮盖输入框_Android软键盘遮住输入框的解决方法终极适配
新的一周,新的开始迎接新的挑战。今天简单介绍一下Android输入框被软键盘遮住的两种常用方法。
法一:清单文件对要进行设置的Activity属性配置android:windowSoftInputMode="adjustPan|adjustResize"
但经过测试会发现有时候标题栏也会被挤上去,怎么解决这样的问题呢 ?如果用法一的话这样的问题貌似解决不了
法二:
还有一种方法可以解决这样的问题 这种也是我在网上找的做下记录下次再用的话也不用去网上找了 ,首先把标题栏抽取到基类里面进行初始化等一些列的操作 ,然后对当前的Activity在OnCreate方法setContentView下配置AndroidBug5497Workaround.assistActivity(this);即可
AndroidBug5497Workaround可以放在工具类中,它的代码如下
public class AndroidBug5497Workaround {
public static void assistActivity (Activity activity) {
new AndroidBug5497Workaround(activity);
}
private ViewmChildOfContent;
private int usableHeightPrevious;
private FrameLayout.LayoutParamsframeLayoutParams;
private AndroidBug5497Workaround(Activity activity) {
FrameLayout content = (FrameLayout) activity.findViewById(android.R.id.content);
mChildOfContent = content.getChildAt(0);
mChildOfContent.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
public void onGlobalLayout() {
possiblyResizeChildOfContent();
}
});
frameLayoutParams = (FrameLayout.LayoutParams)mChildOfContent.getLayoutParams();
}
private void possiblyResizeChildOfContent() {
int usableHeightNow = computeUsableHeight();
if (usableHeightNow !=usableHeightPrevious) {
int usableHeightSansKeyboard =mChildOfContent.getRootView().getHeight();
int heightDifference = usableHeightSansKeyboard - usableHeightNow;
if (heightDifference > (usableHeightSansKeyboard/4)) {
// keyboard probably just became visible
frameLayoutParams.height = usableHeightSansKeyboard - heightDifference;
}else {
// keyboard probably just became hidden
frameLayoutParams.height = usableHeightSansKeyboard;
}
mChildOfContent.requestLayout();
usableHeightPrevious = usableHeightNow;
}
}
private int computeUsableHeight() {
Rect r =new Rect();
mChildOfContent.getWindowVisibleDisplayFrame(r);
return (r.bottom - r.top);// 全屏模式下:return r.bottom
}
}
这种方法就可以解决标题栏不会被挤上去的情况了
android 键盘遮盖输入框_Android软键盘遮住输入框的解决方法终极适配相关推荐
- android 键盘遮盖输入框_Android软键盘挡住输入框的终极解决方案
前言 开发做得久了,总免不了会遇到各种坑. 而在Android开发的路上,『软键盘挡住了输入框』这个坑,可谓是一个旷日持久的巨坑--来来来,我们慢慢看. 入门篇 最基本的情况,如图所示:在页面底部有一 ...
- android 页面默认不弹软键盘_Android 软键盘的全面解析,让你不再怕控件被遮盖!...
作者 | Vander丶 编辑 | 苏宓 微信公众号 | mobilehub 背景 Android软键盘这块从我入职到现在,是一个一直纠缠我的问题. 从布局挤压,到EditText显示不全,在到弹出时 ...
- android 键盘遮盖输入框_Android各种键盘挡住输入框解决办法
原标题:Android各种键盘挡住输入框解决办法 今日科技快讯 C919大型客机首飞成功,让很多人激动不已.然而近日网上也出现了一些不同的声音:说这架飞机许多部件都是进口货,甚至有人说C919中国人只 ...
- edittext 软键盘上方_Android 软键盘的全面解析,让你不再怕控件被遮盖
原标题:Android 软键盘的全面解析,让你不再怕控件被遮盖 作者 | Vander丶 编辑 | 苏宓 微信公众号 | mobilehub 背景 Android软键盘这块从我入职到现在,是一个一直纠 ...
- flutter TextField 输入框被软键盘挡住的解决方案
flutter TextField 输入框被软键盘挡住的解决方案 参考文章: (1)flutter TextField 输入框被软键盘挡住的解决方案 (2)https://www.cnblogs.co ...
- Android禁用软键盘和取消禁用软键盘
最近参加了一个项目,主要需要适应带有物理键盘的小屏幕机型,因为屏幕小的原因,所以不能用软件盘,而需要使用物理键盘来进行输入操作. 找了很久,终于发现了相对适当的方法: 在BaseActivity里禁用 ...
- android开发隐藏软键盘,Android开发之完全隐藏软键盘的方法
隐藏软键盘一直是我头痛的事情,没有找到一种真正能隐藏的方法.点击EditText的时候总是弹出软键盘.-----杯具 杯具(一): InputMethodManager im =(InputMetho ...
- android 软键盘工具类,Android开发之弹出软键盘工具类简单示例
本文实例讲述了Android开发之弹出软键盘工具类.分享给大家供大家参考,具体如下: package com.maobang.imsdk.util; import android.content.Co ...
- 解决安卓H5输入框获取焦点软键盘页弹起,页面高度被压缩问题
在移动项目开发中经常会遇到输入框获取焦点软键盘页弹起,页面高度被压缩,输入框获取焦点时弹不上去的问题,我本次的是vue的UI框架(vux) 解决办法如下代码: 只要在页面初始化完成的时候,获取屏幕的可 ...
最新文章
- windows php swoole 安装
- 操作系统与虚拟化安全第一次作业-关键习题
- “全人类的知识宝藏”维基百科迎来了20岁的生日!
- Jenkins的一些代码
- H5实现微信摇一摇功能
- 明科在线客服系统PHP_在线客服系统的标准功能有哪些
- 创业赚钱 卖货 做项目如何最大化保证成功?
- linux 网络内核 ko文件,编译内核模块 .ko文件缺少:mmzone.h bounds.h
- python21天打卡Day12--for循环,列表推导式-构建列表
- I00003 贝尔三角形
- 我的世界服务器换披风的网站,我的世界评测_我的世界正版披风怎么换|或_游戏手机游戏-中关村在线...
- 北大中文核心期刊目录(2004年版)
- 通过两点求圆心的公式
- 全链路压测之全链自动化
- asp.net体育用品销售系统
- utc时间 单位换算_将UTC日期转换为毫秒
- Android Framework 音频子系统(11)耳麦插拔之声音通道切换
- Mybatis注解开发笔记
- Airpods Pro连接Macbook Pro偶尔会没有声音
- python3.5安装tensorflow_win10下python3.5.2和tensorflow安装环境搭建教程
热门文章
- 分析 js构造函数:对象方法 、类方法 、原型方法
- python json.dumps()函数输出json格式,使用ensure_ascii参数对中文输入的支持
- UVA-10817- Headmaster's Headache(状压DP)
- 2018.09.17 atcoder Digit Sum(数论)
- python 将数据写入excel
- 【Netty】EventLoop和线程模型
- 数据结构之排序算法Java实现(2)——选择类排序之堆排序算法
- ASP.net+MVC--2
- TOMCAT启动汉字乱码解决方案
- 【白皮书分享】2021智慧零售私域白皮书-腾讯.pdf(附下载链接)