您可能想要一個菜單,其中包含您的不同項目。
做這樣的事情,以創建菜單和虛增您的xml:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.my_menu, menu);
return true;
}
然後處理單擊事件:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.admin:
switchToAdminUI();
return true;
case R.id.guest:
switchToGuestUI();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
而且你my_menu.xml
可能是這個樣子:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/menu_overflow"
android:icon="@drawable/abs_ic_menu_moreoverflow_material"
android:showAsAction="always">
<menu>
<item
android:id="@+id/admin"
android:showAsAction="never"
android:icon="@drawable/ic_admin"
android:title="@string/admin"/>
<item
android:id="@+id/guest"
android:showAsAction="never"
android:icon="@drawable/ic_guest"
android:title="@string/guest"/>
</menu>
</item>
</menu>
您可以在上面看到android:showAsAction="always"
,這意味着它將始終顯示爲一個操作欄圖標,然後將子菜單項放在那裏。
試試吧,你也可以在此處詳細瞭解https://developer.android.com/guide/topics/ui/menus.html
菜單你是什麼意思的動態?你列出了3個選項,所以這是一個靜態列表。 –
未來可能會有更多。我有一個用戶類型的Sqlite表,我希望能夠添加一個條目到該表(例如說「超級管理員」),並讓它自動添加到這裏的收音機選項列表中,而不必進入並手動修改XML。 – b85411
我明白了。在這種情況下,您必須使用Java構建'Menu'對象,並從'onOptionsItemSelected'中爲您的標籤充氣。 –