我使用的是在\ menu文件夾下的xml中定義的android選項菜單。 菜單中有5個項目,它們在佈局中顯示爲兩行 - 最上面一行包含2個項目,最後一行包含其他3個項目。更改android選項菜單佈局
有沒有一種方法來配置菜單,使頂行將包含3項,底線將包含其他2?
謝謝!
我使用的是在\ menu文件夾下的xml中定義的android選項菜單。 菜單中有5個項目,它們在佈局中顯示爲兩行 - 最上面一行包含2個項目,最後一行包含其他3個項目。更改android選項菜單佈局
有沒有一種方法來配置菜單,使頂行將包含3項,底線將包含其他2?
謝謝!
我認爲如果你把菜單項放在一個組中,它會盡量保持它們在一起。在您的活動中創建菜單時,如果不使用XML,控制菜單項的順序會更好。在你的活動,你可以在組像這樣得到的菜單項:
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
int group1Id = 1;
int Id1 = Menu.FIRST;
int Id2 = Menu.FIRST +1;
int Id3 = Menu.FIRST +2;
super.onCreateOptionsMenu(menu);
menu.add(group1Id, Id1, 1, "Option 1");
menu.add(group1Id, Id2, 2, "Option 2");
menu.add(group1Id, Id3, 3, "Option 3");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
super.onOptionsItemSelected(item);
switch (item.getItemId()) {
case 1: //for option 1
return true;
case 2: //for option 2
return true;
case 3: //for option 3
return true;
default:
return false;
}
參數: 的groupId組標識符,這個項目應該成爲其中的一部分。
itemId唯一商品ID。如果您不需要唯一的ID,請使用NONE。
order該物品的訂單。如果您不關心訂單,請使用NONE。
標題要顯示的項目文本。
返回: 新添加的菜單項。
我們可以使用不同的佈局選項菜單 例如: -
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menuRefresh"
android:icon="@drawable/ic_menu_refresh"
android:title="Refresh"
android:showAsAction = "always"/>
<item android:id="@+id/menuAbout"
android:icon="@drawable/ic_menu_info_details"
android:title="About"
android:showAsAction = "always"/>
</menu>
您可以使用 「從不」 「withtext」 「ifRoom」 「總是」, 「collapseActionView」 or you can read out full details here
我我試圖在菜單xml中定義一個組,並且項目顯示沒有改變。 我想知道是否在代碼上創建它會改變它。 – Shlomi