当你添加时
submenu.add(0, Menu.FIRST, Menu.NONE, "Get Last 5 Packets");
add()方法的参数排列为Android菜单添加方法 http://developer.android.com/reference/android/view/Menu.html#add%28int,%20int,%20int,%20java.lang.CharSequence%29
public abstract MenuItem add (int groupId, int itemId, int order, CharSequence title)
itemId 唯一的项目 ID。如果不需要唯一 ID,请使用 NONE。
是您的菜单项的 ID。它应该是独一无二的。就像你说的15、20、21。这个 id 的行为就像android:id="@+id/15"
。当您要检查单击了哪个项目时将使用
e.g
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_activity_menu, menu);
SubMenu submenu = menu.addSubMenu(0, Menu.FIRST, Menu.NONE, "Preferences");
submenu.add(0, 10, Menu.NONE, "Get Last 5 Packets");
submenu.add(0, 15, Menu.NONE, "Get Last 10 Packets");
submenu.add(0, 20, Menu.NONE, "Get Last 20 Packets");
inflater.inflate(R.menu.main_activity_menu, submenu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case 10:
Toast.makeText(LoginPageActivity.this, "Now "+item.getItemId(), Toast.LENGTH_SHORT).show();
return true;
case 15:
Toast.makeText(LoginPageActivity.this, "Now = "+item.getItemId(), Toast.LENGTH_SHORT).show();
return true;
case 20:
Toast.makeText(LoginPageActivity.this, "Now == "+item.getItemId(), Toast.LENGTH_SHORT).show();
return true;
default:
return super.onOptionsItemSelected(item);
}
}