如何知道三星 S8、S8+、S9 等底部导航栏何时可见?

2024-03-10

三星 S8、S8+、S9 等上的底部导航栏在关闭时会导致 UI 和动画噩梦,导致视图从应用程序的顶部和底部移入和移出。对于这些设备,如果导航栏打开,一切都会完美运行,但如果关闭,所有动画都会低于导航栏的高度。我的想法是调整动画,但是,我很难弄清楚手机何时有底部导航栏并且它被关闭。

我创建了一个辅助方法,它可以很好地让我知道设备已打开导航栏。对于所有具有导航栏且已打开的设备,此函数将返回 true。但我想要处理的情况是当它关闭时。问题是,关闭就像所有其他手机一样。如何解决这个问题?有没有办法强制导航栏永久显示?

   public static boolean hasNavBar(@NonNull Activity activity, @NonNull View rootView) {
        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR1) {
            return true;
        }

        // retrieve the window manager for showing custom windows
        Display d = activity.getWindowManager().getDefaultDisplay();
        DisplayMetrics realDisplayMetrics = new DisplayMetrics();
        d.getRealMetrics(realDisplayMetrics);

        int viewHeight = rootView.getHeight();
        if (viewHeight == 0) {
            return true;
        }
        int realHeight = realDisplayMetrics.heightPixels;
        return realHeight != viewHeight;
    }

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何知道三星 S8、S8+、S9 等底部导航栏何时可见? 的相关文章

随机推荐

  • 部署到 Heroku 失败。移动文件与节点版本不兼容

    我正在努力将新的 Rails 6 应用程序部署到 Heroku 它在我本地运行良好 在部署过程中 我收到以下输出 不幸的是 我对 webpack 和 Yarn 还很陌生 这似乎是 move file 的版本 依赖关系问题 而 move fi
  • 插入附近的语法不正确

    我是学生 这是家庭作业 表在那里 但没有插入数据 感谢您的任何建议 Msg 156 Level 15 State 1 Line 181 Incorrect syntax near the keyword INSERT SQL语句 USE M
  • 在字符串中的某些字符之前和之后添加空格

    我想在字符串中的某些字符之前和之后添加空格 var x asdasdasdasd adasdasdasd asdasdasdasd asdasdasd asdasdasd asdasdasdadasdasd 我想在前后添加空格 var se
  • 包括标签和数据绑定

    我想在同一视图中多次使用我的布局之一include 假设我有一个custom xml包括一些TextViews custom xml
  • Reactjs不加载文本字体

    我在用React with Typescript and Styled Component我无法上传文本字体 只有字体可以不在浏览器中加载 我所拥有的是以下 字体 ts import css from styled components e
  • MFMessageComposeViewController 和 iMessage

    我正在构建一个有按钮的应用程序 如果您触摸该按钮 则会出现MFMessageComposeViewController将显示 并填写正文和一名收件人 该收件人是 4343 这是比利时短信的简码 这里错误的是MFMessageComposeV
  • 如何捕获 paypal webhook?

    我已在我的网站中集成了 PayPal 智能按钮createOrder and Capture在服务器端处理 付款完成后 交易即可在业务沙箱帐户上使用 并且webhook事件在 Webhooks 事件页面中注册 The webhook POS
  • Apache 模块命令解析器原型

    我正在创建 Apache2 模块并遇到奇怪的编译问题 这是我的函数的原型 用于解析名为 的配置命令分析IP static const char apr cfg set analytics ip cmd parms cmd void conf
  • tensorflow conv2d内存消耗解释?

    output tf nn conv2d input weights strides 1 3 3 1 padding VALID My input形状为 200x225x225x1 weights是 15x15x1x64 因此 output形
  • nbactions.xml 有何用途?

    经过一段时间的搜索后 我认为这与使用 Maven 和 Net beans 构建应用程序有关 但我似乎找不到这方面的良好文档 使用 nbaction xml 可以实现哪个目标 如果有的话 哪一个与 Eclipse 等效 The nbactio
  • 为什么这个 constexpr 代码会导致 GCC 吃掉我所有的 RAM?

    以下程序将调用fun2 MAXD 1 次 不过 最大递归深度永远不应该超过 MAXD 如果我的想法是正确的 因此 编译可能需要一些时间 但它不应该占用我的内存 include
  • 特定文件夹结构中的文件的 Azure 存储

    目前我有一些 ftp 其中有一些文件夹和文件的深层结构 它甚至可能比根文件夹低 10 级 由于我已经成功地将本地数据库迁移到 azure 数据库 我还想知道是否有任何 azure ftp 我也可以用来迁移它 我知道我们有类似 Azure 存
  • 如何在 Bootstrap 3 中使用 bootstrap-theme.css?

    从以下位置下载完整的 bootstrap 3 包后http getbootstrap com http getbootstrap com 我注意到主题有一个单独的 css 文件 如何利用它 请解释 包括我bootstrap theme cs
  • 创建一个128字节的随机数

    If the rand 函数创建一个长度为 4 字节的随机数 我想创建一个长度为 1024 位 128 字节 的随机数 这是通过连接来获得此值的最简单方法rand 函数256次还是有其他方法 include
  • Random().Next() 的流需要多长时间才会重复?

    考虑 NETRandom stream var r new Random while true r Next 重复需要多长时间 根据文档 伪随机数是从有限个数中以相等的概率选择的 一组数字 选定的数字是 不是完全随机的 因为 确定的数学算法
  • 检查 pandas 列中的连续行值

    I have hi 0 1 1 2 2 4 3 8 4 3 5 3 6 2 7 8 8 3 9 5 10 4 我有一个列表和单个整数的列表 如下所示 2 8 3 2 2 8 对于主列表中的每个项目 我想找出它第一次出现在列中的索引 因此 对
  • 使用 node.js 的 http 请求失败 发送后无法设置标头

    我尝试使用 https http 请求服务器并将结果显示在网页中 它作为服务器上的脚本工作 但由于我通过 get 请求返回结果而失败 var express require express var app express var port
  • Ember Data:在控制台中获取模型

    我有最简单的 Ember 应用程序JSBin http jsbin com aYIkAcUk 2 edit 我想做的就是找到一个模型 基于其他所以问题 https stackoverflow com questions 18756092 h
  • 跨域AJAX post调用

    我必须对位于另一台服务器上的 asp 表单进行 POST 调用 带参数 对于开发 我在同一台服务器上执行了此操作 并且运行良好 但现在我在另一台服务器上测试它 我收到的不是 200 状态 而是 0 状态 我认为这是因为它是跨域 AJAX 调
  • 如何知道三星 S8、S8+、S9 等底部导航栏何时可见?

    三星 S8 S8 S9 等上的底部导航栏在关闭时会导致 UI 和动画噩梦 导致视图从应用程序的顶部和底部移入和移出 对于这些设备 如果导航栏打开 一切都会完美运行 但如果关闭 所有动画都会低于导航栏的高度 我的想法是调整动画 但是 我很难弄