我想在選擇後將菜單項替換爲另一個菜單項。我嘗試了以下,但它不按預期工作。任何解決方案。謝謝。在Android中選擇後更改菜單項
的menu.xml文件的文件是:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/add" android:visible="true" android:enabled="true" android:title="Add"></item>
<item android:id="@+id/delete" android:visible="false" android:enabled="true" android:title="Delete"></item>
</menu>
內MyActivity.java的代碼是:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.defaultmenu, menu);
return true;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
if(isAdded) {
menu.removeItem(R.id.add);
menu.add(0, R.id.delete, 0, "Delete");
} else {
menu.removeItem(R.id.delete);
menu.add(0, R.id.add, 0, "Add");
}
return super.onPrepareOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.add:
isLogin = true;
return true;
case R.id.delete:
isLogin = false;
return true;
default:
return super.onOptionsItemSelected(item);
}
}
你能更具體的「它沒有按預期工作」? – Kaediil 2012-07-26 13:17:35
@Kaediil:「添加」菜單顯示3次。 – user1182217 2012-07-27 04:36:28