如何确保菜单项始终位于顶部栏?

时间:2017-10-17 22:06:27

标签: android

Menuitem

2菜单项connectdisconnect已编码,因此一次只显示其中一个。 我想在顶部栏上进行,而不是在...按钮下。

以下是我的菜单xml

<?xml version="1.0" encoding="utf-8"?>

<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:id="@+id/menu_refresh"
    android:checkable="false"
    android:orderInCategory="1"
    app:showAsAction="ifRoom" />
<item
    android:id="@+id/menu_connect"
    android:icon="@android:color/holo_blue_bright"
    android:orderInCategory="100"
    android:title="@string/menu_connect"
    app:showAsAction="ifRoom|withText" />

<item
    android:id="@+id/menu_disconnect"
    android:orderInCategory="101"
    android:title="@string/menu_disconnect"
    app:showAsAction="ifRoom|withText" />

3 个答案:

答案 0 :(得分:1)

您可以尝试:

<?xml version="1.0" encoding="utf-8"?>   
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:id="@+id/menu_refresh"
    android:checkable="false"
    android:orderInCategory="1"
    app:showAsAction="always" />
<item
    android:id="@+id/menu_connect"
    android:icon="@android:color/holo_blue_bright"
    android:orderInCategory="100"
    android:title="@string/menu_connect"
    app:showAsAction="always" />

<item
    android:id="@+id/menu_disconnect"
    android:orderInCategory="101"
    android:title="@string/menu_disconnect"
    app:showAsAction="always" />

我希望它能帮到你解决问题!

答案 1 :(得分:1)

如果您设置app:showAsAction="always"仍然遇到同样的问题,则应检查onCreateOptionsMenu。如果您以不同方式创建菜单,请尝试此操作,它会对您有所帮助。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater inflater = getMenuInflater();
  inflater.inflate(R.menu.main, menu);
  return true;
}

答案 2 :(得分:0)

你试过设置......

app:showAsAction="always"

...您希望在顶部栏中显示的项目(应用栏)始终

修改

...或

app:showAsAction="always|withText"

如果你想显示标题。