Android 显示应用程序图标和菜单项之间大空间的操作栏
我的操作栏在左边显示应用程序图标,然后有一个很大的空间,然后在右边显示我的一些菜单项(其余的进入溢出状态)。问题是“大空间”足够容纳多个图标。为什么它没有被使用 我的菜单资源如下所示:Android 显示应用程序图标和菜单项之间大空间的操作栏,android,android-actionbar,menuitem,Android,Android Actionbar,Menuitem,我的操作栏在左边显示应用程序图标,然后有一个很大的空间,然后在右边显示我的一些菜单项(其余的进入溢出状态)。问题是“大空间”足够容纳多个图标。为什么它没有被使用 我的菜单资源如下所示: <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/menu_a"
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menu_a"
android:icon="@drawable/a"
android:title="a"
android:orderInCategory="100"
android:showAsAction="ifRoom" >
<menu>
<item ... />
...
</menu>
</item>
...
<item
android:id="@+id/menu_n"
android:icon="@drawable/n"
android:title="n"
android:orderInCategory="100"
android:showAsAction="ifRoom" >
...
</item>
</menu>
及
我怀疑它与我已禁用的应用程序标题(SetDispAnalysShowTitleEnabled)有关。也许我做错了?你的代码没有问题 默认情况下,即使有足够的空间容纳4-5个菜单项,AnationBar也只允许2-3个菜单项 可能是为了维护更好的UI 因此,与其
android:showAsAction="ifRoom"
使用
让菜单项始终出现在操作栏上,而不是进入溢出菜单。那么,如何使其在各种大小的屏幕上工作?我希望避免编写计算图标大小的代码。这就是为什么,为了支持所有屏幕大小,我们必须使用ifRoom。但在任何屏幕上,3个菜单项都不会有问题。此外,这些菜单项是多么重要,用户不希望他的操作栏中填满它们。你最好说你有多少个菜单项,以及必须始终显示多少个。那么,你是说显示2个图标(在我的京瓷上)的限制是出于设计,而不是按照开发者的要求显示多少?你确定吗?是的。但是,您可以使用android:showAsAction=“always”确定,谢谢您的确认,而不是按照开发人员要求的数量显示。而且,是的,我对“总是”很熟悉——只是尽量避免。
@Override
public boolean onCreateOptionsMenu (Menu menu)
{
getMenuInflater().inflate(R.menu.nav_menu, menu);
return true;
}
android:showAsAction="ifRoom"
android:showAsAction="always"