Android 解决界面底部弹出dialog被虚拟按键遮挡一部分的问题
来源:互联网 发布:java核心技术 pdf 编辑:程序博客网 时间:2024/04/29 00:38
原文链接: http://blog.csdn.net/shengyakun1/article/details/54174893
Android 部分机型没有物理按键,只有虚拟按键,Activity全屏方法如下:
1、在
setContentView(R.layout.activity_main);之前添加
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
2、当用户划出虚拟按键后,自动再隐藏方法如下:
getWindow().getDecorView().setOnSystemUiVisibilityChangeListener(new OnSystemUiVisibilityChangeListener() { @Override public void onSystemUiVisibilityChange(int visibility) { int uiOptions = View.SYSTEM_UI_FLAG_LAYOUT_STABLE | //布局位于状态栏下方 View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | //全屏 View.SYSTEM_UI_FLAG_FULLSCREEN | //隐藏导航栏 View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN; if (Build.VERSION.SDK_INT >= 19) { uiOptions |= 0x00001000; } else { uiOptions |= View.SYSTEM_UI_FLAG_LOW_PROFILE; } getWindow().getDecorView().setSystemUiVisibility(uiOptions); }});3、dialog 隐藏方法
mDialog.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);mDialog.getWindow().getDecorView().setOnSystemUiVisibilityChangeListener(new OnSystemUiVisibilityChangeListener() { @Override public void onSystemUiVisibilityChange(int visibility) { int uiOptions = View.SYSTEM_UI_FLAG_LAYOUT_STABLE | //布局位于状态栏下方 View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | //全屏 View.SYSTEM_UI_FLAG_FULLSCREEN | //隐藏导航栏 View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN; if (Build.VERSION.SDK_INT >= 19) { uiOptions |= 0x00001000; } else { uiOptions |= View.SYSTEM_UI_FLAG_LOW_PROFILE; } mDialog.getWindow().getDecorView().setSystemUiVisibility(uiOptions); }});要在mDialog.show();之前。
我用上面的方法解决了这一问题.有个地方注意下:
在3、dialog 隐藏方法 里原作者使用的全屏设置,效果是弹出dialog时原来的页面会变为全屏,我不需要该功能,所以把
View.SYSTEM_UI_FLAG_FULLSCREEN |这一句给去了就可以了.
记录下这个问题.
0 1
- Android 解决界面底部弹出dialog被虚拟按键遮挡一部分的问题
- Android 解决底部弹出PopWindow时如果有虚拟按键遮挡问题
- 解决输入法遮挡布局和华为手机底部虚拟按键遮挡底部界面的方法
- Android底部虚拟按键遮挡应用
- android 解决底部navigation与手机虚拟按键重叠问题
- Android虚拟按键遮挡Listview的FooterView问题
- 解决 android 输入法弹出输入框被遮挡的问题
- android 虚拟按键遮挡布局问题
- 解决Dialog对话框在输入法弹出时被遮挡的问题
- 解决虚拟按键遮盖底部视图的问题
- 虚拟按键遮挡控件的问题
- PopupWindow在android5.0以上底部弹出在虚拟按键下方的解决
- android 虚拟按键遮挡布局
- android Dialog 底部弹出
- android 弹出底部dialog
- Android底部弹出Dialog
- 隐藏Android底部的虚拟按键
- popwindow被虚拟按键遮挡
- Lintcode—(3)比较字符串
- 正太分布的前世今生
- oracle 12c演示模式正确打开姿势
- HTTP协议详解
- 剪刀石头布
- Android 解决界面底部弹出dialog被虚拟按键遮挡一部分的问题
- js职责链模式
- VS 2015 + Qt 5.8 环境配置
- FileChannel 与 ByteBuffer 操作文件
- 微信面试题-获取元素的最终background-color
- Nand Flash analyse 后续
- 数据结构之直接插入排序
- HUST 1584 摆放餐桌【计算几何】
- Laravel批量写入数据详解