Androidメニューの中に更に子メニューを作る
最終更新日31 Mar 2015 05:56
@Override public boolean onOptionsItemSelected(MenuItem item){ switch(item.getItemId()){ case MENUITEM_EXTRALAYER: {//caseの中をカッコで囲んでおくと変数のスコープがその中で完結して便利です。 AlertDialog.Builder menu_builder = new AlertDialog.Builder(this); menu_builder.setTitle("親メニューの名前"); DialogInterface.OnClickListener menu_itemListener = new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int mode) { switch(mode){ case MENUITEM_CHILD1: break; } } } String[] menu_type_items = new String[MENUITEM_CHILDREN_NUM]; //アイテムの名前セット menu_type_items[MENUITEM_VICS] = "子メニュ−1"; menu_type_items[MENUITEM_VICS_PROBE_ALL] = "子メニュー2"; menu_type_items[MENUITEM_VICS_PROBE_REALTIME_ONLY] = "子メニュー3"; menu_type_items[MENUITEM_VICS_PROBE_REALTIME_STATICS] = "子メニュー4"; menu_type_items[MENUITEM_PROBE] ="子メニュー5"; menu_builder.setItems(menu_type_items, menu_itemListener); AlertDialog menu_type_dialog = menu_builder.create(); menu_type_dialog.show(); break; }