gpt4 book ai didi

android - 检测 Android 导航栏方向

转载 作者:IT老高 更新时间:2023-10-28 23:32:20 25 4
gpt4 key购买 nike

有没有办法知道这个导航栏将在哪里显示横向:

  • 在 Nexus7 上它位于底部
  • 在 nexus 5 上,它位于右侧。

谢谢

enter image description here

最佳答案

部分基于 Pauland 的回答(又基于 PhoneWindowManager 的实现),这是我目前使用的:

  public static boolean isSystemBarOnBottom(Context ctxt) {
Resources res=ctxt.getResources();
Configuration cfg=res.getConfiguration();
DisplayMetrics dm=res.getDisplayMetrics();
boolean canMove=(dm.widthPixels != dm.heightPixels &&
cfg.smallestScreenWidthDp < 600);

return(!canMove || dm.widthPixels < dm.heightPixels);
}

这适用于 Nexus 7 2012 和 Nexus 4,均运行 Android 5.1。

在具有永久 MENU 键的设备上,没有系统栏。根据您的用例,您可能需要检查这种情况:

ViewConfiguration.get(ctxt).hasPermanentMenuKey()

(其中 ctxt 是一些 Context)

就我个人而言,我正在使用它来尝试让滑动面板位于系统栏的相反轴上,因为在系统栏一侧滑动挡板有点难以触发。对于任何关键的事情,我不会使用这个或任何其他算法(比如依赖于 getDecorView() 的算法)。

关于android - 检测 Android 导航栏方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21057035/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com