【发布时间】:2012-11-29 14:09:12
【问题描述】:
在 Galaxy S3 上,我遇到了一个问题,即 ActionBar 中的按钮配置为 showAsAction="always" 并同时显示在硬件溢出菜单和操作按钮上。我希望它不显示在硬件溢出菜单上,而只显示在操作按钮上。我可以在 onCreateOptionsMenu 中禁用菜单项,但它会隐藏两个地方的按钮。
注意事项:如果我强制显示“3 点”动作溢出菜单,刷新按钮会从硬件溢出菜单中正确隐藏,但仍不会从硬件溢出菜单中隐藏。
还有一点需要注意:如果我在 onCreateOptionsMenu 或 onPrepareOptionsMenu 中调用 menu.size(),它不会反映额外的按钮。例如,我有四个按钮,第一个按钮同时显示在操作按钮和溢出菜单中。 menu.size() 仍然返回 4 并且似乎没有意识到它显示了一个额外的按钮。
我无法发布屏幕截图,因为这是一个客户端应用程序,但这是我的 actionbar.xml 文件。刷新按钮显示在溢出和顶部的操作栏中。
actionbar.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/refreshmenuitem"
android:icon="@drawable/refreshicon"
android:title="Refresh"
android:showAsAction="ifRoom"
android:visible="true"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
<item android:id="@+id/helpbutton"
android:title="Help"
android:showAsAction="collapseActionView"
android:icon="@drawable/ic_action_helpbutton" />
<item android:id="@+id/settingbutton"
android:title="Settings"
android:icon="@drawable/ic_action_settingbutton"
android:showAsAction="collapseActionView" />
<item android:id="@+id/importbutton"
android:title="Import file"
android:icon="@drawable/ic_action_importbutton"
android:showAsAction="collapseActionView" />
</menu>
【问题讨论】:
-
请张贴一两个屏幕截图以帮助说明您所看到的内容。
-
请同时发布您的菜单代码或xml
标签: android android-actionbar android-4.0-ice-cream-sandwich