gpt4 book ai didi

android - 如何检测菜单项溢出?

转载 作者:行者123 更新时间:2023-11-30 00:57:02 28 4
gpt4 key购买 nike

是否可以通过编程方式检测菜单何时溢出?

我的 Intent 是让菜单项始终可见(SHOW_AS_ACTION_ALWAYS),除非它会导致其他项目溢出,在这种情况下,不要显示菜单项根本。即:

if (overflowed) actionBarMenu.removeItem(id);

最佳答案

您没有说明该菜单出现在哪里,所以我将仅举例说明您可以使用工具栏执行的操作。您需要做的是从 Toolbar 获取对 ActionMenuView 的引用,然后对其调用 isOverflowMenuShowing,如下所示:

private boolean isOverflowShowing(Toolbar toolbar) {
if(toolbar == null) {
return false;
}

for(int i = 0; i < toolbarView.getChildCount(); i++) {
View v = toolbarView.getChildAt(i);
if(v instanceof ActionMenuView) {
return ((ActionMenuView)v).isOverflowMenuShowing();
}
}
return false;
}

这是粗糙和肮脏的——我还没有测试过——但它应该能让你入门。

关于android - 如何检测菜单项溢出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39966686/

28 4 0