gpt4 book ai didi

android - 如何强制显示操作栏溢出图标

转载 作者:IT老高 更新时间:2023-10-28 22:19:12 24 4
gpt4 key购买 nike

我想强制溢出图标始终显示在操作栏中(假设有溢出项目)。在带有菜单按钮的型号上,有时不会出现溢出图标,用户必须点击设备菜单按钮才能获得其余的操作菜单项。用户不断提示这一点。

请注意,对于上下文菜单,溢出图标始终显示,无论设备是否具有内置菜单按钮。

我意识到强制溢出图标出现在操作栏中会复制“物理”图标的功能。您可能会认为这违反了 Android 设计准则。不过,在我看来,用户赢了。他们说这令人困惑,我相信他们是对的。

最佳答案

恭喜!你赢了!

从 Android 4.4 开始,无论设备是否具有物理 MENU 按钮,操作栏中的 ... 提示都将出现。谷歌当前Compatibility Definition Document现在更强烈地反对使用专用的 MENU 按钮。

开发人员过去为了获得这种行为而使用的 hack 是:

try {
ViewConfiguration config = ViewConfiguration.get(this);
Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");

if (menuKeyField != null) {
menuKeyField.setAccessible(true);
menuKeyField.setBoolean(config, false);
}
}
catch (Exception e) {
// presumably, not relevant
}

这在 Android 4.4+ 上不应该是必需的,尽管有了异常处理程序,如果您运行它,我预计不会出现任何特殊问题,并且有一天,它们会彻底摆脱 sHasPermanentMenuKey

就我个人而言,我仍然不会在 Android 4.3 及更低版本上进行更改,因为我怀疑这是一种“打地鼠”的情况,在这种情况下,您将用提示有相同菜单的重复版本来代替没有菜单的提示。话虽如此,由于这是官方认可的 future 行为,因此我对旨在在旧设备上保持一致性的开发人员没有任何问题。

the commenter on the issue I filed对此,指出变化。

关于android - 如何强制显示操作栏溢出图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20444596/

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