我对Menus和MenuItems有问题。每当我点击一个MenuItem
,item.getItemId()
总是返回0.有谁知道为什么?MenuItem.getItemId返回0而不是ItemId
public class MenuAct extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.event_activity, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
Log.d("event", "ItemSelected=" + item.getItemId());// always 0
return true;
}
}
/res/menu/event_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:name="@+id/evt_createEvent"
android:title="1" />
<item
android:name="@+id/menu_evt_abortCreate"
android:title="2" />
<item
android:name="@+id/menu_evt_saveChanges"
android:title="3" />
<item
android:name="@+id/menu_evt_deleteEvent"
android:title="4" />
</menu>
awwwwwwww CR * P .... – 2011-04-13 09:58:41
或者像谢尔顿将它说对我的脸,“Bazinga!” – 2011-04-13 09:59:25
多数民众赞成混淆,getItemId返回一个int,如果我设置一个字符串ID将如何工作? – yehyatt 2016-11-21 10:53:40