Android dialog 去除虚拟按键的解决方法

 更新时间:2018年07月28日 10:42:34   作者:sheng_home  
今天小编就为大家分享一篇Android dialog 去除虚拟按键的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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();之前。

以上这篇Android dialog 去除虚拟按键的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Android MPAndroidChart开源库图表之折线图的实例代码

    Android MPAndroidChart开源库图表之折线图的实例代码

    这篇文章主要介绍了Android MPAndroidChart开源库图表之折线图的实例代码,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • 使用Eclipse配置android开发环境教程

    使用Eclipse配置android开发环境教程

    这篇文章主要介绍了使用Eclipse配置android开发环境教程,本文讲解了下载需要用到的工具、下载完需要的工具之后开始安装、让Ecplise自动安装Android开发插件(ADT- plugin)、配置Andiord SDK路径、测试开发一个Android项目等内容,需要的朋友可以参考下
    2015-04-04
  • Android开发之获取SD卡及手机ROM容量的方法

    Android开发之获取SD卡及手机ROM容量的方法

    这篇文章主要介绍了Android开发之获取SD卡及手机ROM容量的方法,结合实例形式分析了Android针对SD卡的读取及属性操作相关技巧,需要的朋友可以参考下
    2016-04-04
  • Android Activity 不能被截屏的解决方法

    Android Activity 不能被截屏的解决方法

    下面小编就为大家分享一篇Android Activity 不能被截屏的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • flutter InheritedWidget使用方法总结

    flutter InheritedWidget使用方法总结

    这篇文章主要为大家介绍了flutter InheritedWidget使用方法总结示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • Android实现注册页面

    Android实现注册页面

    这篇文章主要为大家详细介绍了Android实现注册页面之监听器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • Android实现两圆点之间来回移动加载进度

    Android实现两圆点之间来回移动加载进度

    这篇文章主要为大家详细介绍了Android实现两圆点之间来回移动加载进度,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • Android设计模式之单例模式解析

    Android设计模式之单例模式解析

    这篇文章主要为大家详细介绍了Android设计模式之单例模式的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • Android实现高德地图首页效果(上)

    Android实现高德地图首页效果(上)

    这篇文章主要为大家详细介绍了基于Android实现高德地图首页效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2023-08-08
  • Android Handler内存泄漏详解及其解决方案

    Android Handler内存泄漏详解及其解决方案

    在android开发过程中,我们可能会遇到过令人奔溃的OOM异常,这篇文章主要介绍了Android Handler内存泄漏详解及其解决方案,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-08-08

最新评论