记录资源 解决软键盘遮挡问题
来源:互联网 发布:java组件设计 编辑:程序博客网 时间:2024/05/23 17:30
解决android1.0x到7.0键盘的BUG 添加纪录
public class AndroidBug5497Workaround { public static void assistActivity (Activity activity) { new AndroidBug5497Workaround(activity); } private View mChildOfContent; private int usableHeightPrevious; private FrameLayout.LayoutParams frameLayoutParams; private AndroidBug5497Workaround(final Activity activity) { FrameLayout content = (FrameLayout) activity.findViewById(android.R.id.content); content.setBackgroundResource(R.color.white_ff); mChildOfContent = content.getChildAt(0); mChildOfContent.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { public void onGlobalLayout() { possiblyResizeChildOfContent(activity); } }); frameLayoutParams = (FrameLayout.LayoutParams) mChildOfContent.getLayoutParams(); } private void possiblyResizeChildOfContent(Activity activity) { 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+ScreenUtils.getStatusHeight(activity); } 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); }}
阅读全文
0 0
- 记录资源 解决软键盘遮挡问题
- 完美解决 手机软键盘遮挡问题
- 完美解决 手机软键盘遮挡问题
- android 解决软键盘遮挡popwindow问题
- 软键盘遮挡问题
- 软键盘遮挡问题
- 解决软键盘遮挡按钮
- ios解决软键盘遮挡输入框问题
- Android 模仿QQ登录界面解决软键盘遮挡问题
- js解决软键盘遮挡输入框问题
- Android解决被软键盘遮挡的EditText问题
- 解决登录界面软键盘遮挡按钮问题示例
- Andorid解决登陆时edittext软键盘遮挡问题
- Android软键盘遮挡问题
- 【Android】解决软键盘遮挡登陆按钮
- 【Android】解决软键盘遮挡登陆按钮
- Android解决软键盘遮挡Button
- 解决软键盘遮挡登录按钮
- Java提高篇(三六)-----Java集合细节(二):asList的缺陷
- angularjs grunt build
- HashMap的N种迭代方式
- RCNN\fastRCNN\fasterRCNN
- git高阶
- 记录资源 解决软键盘遮挡问题
- 无xml的springmvc实现登陆功能
- Java提高配(三七)-----Java集合细节(三):subList的缺陷
- 字符串匹配算法
- 本地无法启动MySQL服务,报的错误:1067,进程意外终止---解决
- 硬链接与软链接区别
- vim使用
- Java提高篇(三八)-----Java集合细节(四):保持compareTo和equals同步
- Android应用返回桌面后,每次点击图标,启动界面都会出现