在下面的menu.xml中,我试图在溢出菜单图标中显示menu_exit
,如下所示我设置了showAsAction="never"
,但是当我运行应用程序时,溢出菜单不会出现。
我的问题是:
menu_exit
的溢出菜单中?settings menu
(设备的左下方按钮),我想要的是,当它被禁用时,它不应该出现任何地方,仅在ActionBar
启用时。{/ li>
醇>
menu.xml文件:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menu_refresh"
android:orderInCategory="1"
android:showAsAction="ifRoom"/>
<item
android:id="@+id/menu_scan"
android:checkable="true"
android:orderInCategory="2"
android:title="@string/menu_scan"
android:showAsAction="ifRoom|withText"/>
<item
android:id="@+id/menu_stop"
android:title="@string/menu_stop"
android:orderInCategory="3"
android:showAsAction="ifRoom|withText"/>
<item
android:id="@+id/menu_exit"
android:title="@string/menu_stop"
android:orderInCategory="4"
android:showAsAction="never"/>
</menu>
答案 0 :(得分:2)
在Android 4.4之前,如果设备有硬件菜单按钮,则会使用硬件按钮激活操作溢出菜单,并且不会显示溢出(也称为三点)图标。
即使存在硬件菜单按钮,Android 4.4+设备也会显示动作溢出图标(同时,谷歌试图说服制造商放弃硬件菜单按钮,如您所见,供应商非常顽固)
要强制4.4之前的设备显示操作溢出按钮,即使他们有硬件按钮,也请将其放入您的活动onCreate()
try {
ViewConfiguration config = ViewConfiguration.get(this);
Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
if (menuKeyField != null) {
menuKeyField.setAccessible(true);
menuKeyField.setBoolean(config, false);
}
} catch (Exception ex) {
// Ignore
}
答案 1 :(得分:0)
这是我的菜单的XML文件..
<style name="EditTextDefault" parent="@android:style/Widget.EditText">
Java代码:
<item
android:id="@+id/action_send_feedback"
android:orderInCategory="100"
android:showAsAction="always"
android:title="@string/action_send_feedback"/>
<item
android:id="@+id/action_share_app"
android:orderInCategory="100"
android:showAsAction="ifRoom"
android:title="@string/action_share_app"
android:icon="@drawable/ic_action_share" />
<item
android:id="@+id/action_rate_app"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_rate_app"/>
对于拥有选项按钮(在手机底部)的Android手机,菜单项是showAsAction =&#34;从不&#34;按下按钮时出现...或者它们将在操作栏选项菜单上正常显示..
答案 2 :(得分:0)
如果您使用的是appcompat库,则需要更改
def cut(img,d,u):
for x,line in enumerate(img):
for y,px in enumerate(line):
if px < d or px > u:
img[x][y]=0
else:
img[x][y]=255
到android:showAsAction="never"
示例
app:showAsAction="never"