2014-02-19 89 views
1

我想将两个按钮添加到操作栏中,但在我的情况下仅显示一个按钮。我的代码有什么问题?Android:如何将两个按钮添加到操作栏中

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:myApp="http://schemas.android.com/apk/res-auto" > 
<item android:id="@+id/action_settings" 
     android:title="@string/action_settings" 
     android:icon="@drawable/ic_action_settings" 
     myApp:showAsAction="ifRoom"/> 

<item android:id="@+id/action_about" 
    android:title="@string/action_about" 
    android:icon="@drawable/ic_action_about" 
    myApp:showAsAction="ifRoom"/> 
</menu> 
+0

您使用支持库在您的项目?什么是您的应用程序的最小sdk? – Farnabaz

+0

是的!谢谢,它现在起作用! – Damijan

回答

2

这样使用always代替ifRoom

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:myapp="http://schemas.android.com/apk/res-auto" > 
<item android:id="@+id/action_settings" 
     android:title="@string/action_settings" 
     android:icon="@drawable/ic_action_settings" 
     myapp:showAsAction="always"/> 

<item android:id="@+id/action_about" 
    android:title="@string/action_about" 
    android:icon="@drawable/ic_action_about" 
    myapp:showAsAction="always"/> 
</menu> 

阅读文档

您还可以使用 “总是”,宣布一个项目总是显示为一个 操作按钮。但是,您不应该以这种方式强制项目出现在 操作栏中。这样做可能会在窄屏幕设备 上创建布局问题。最好使用“ifRoom”来请求 某个项目出现在操作栏中,但允许系统在空间不足时将其移动到溢出位置 。但是,如果该项目包含 无法合拢的操作视图,并且必须始终可见以提供对 关键功能的访问权限,则该值可能为 。

Reference

+0

仍然无法正常工作... – Damijan

+0

是否有控制按钮出现的位置?我现在已经把他们两个塞进了最右边的角落,并且想把他们中的一个移到最左边。 – Deco

+1

@Deco最简单的方法就是在你的工具栏上调用'setDisplayHomeAsUpEnabled(true);'并且监听项目id“android.R.id.home”的选项菜单事件 – Farnabaz

相关问题