Android¥¢¥×¥ê¤ò³«È¯¤¹¤ë¤¿¤á¤Î´ðÁäò¤Þ¤È¤á¤Æ¤¢¤ê¤Þ¤¹¡£


³µÍ×

AndroidüËö¤Ë¤Ï¡¢¡Ö¥á¥Ë¥å¡¼¥Ü¥¿¥ó¡×¤È¸Æ¤Ð¤ì¤ë¡¢¡ÖMENU¡×¤È½ñ¤«¤ì¤¿¥Ü¥¿¥ó¤¬¤¢¤ê¤Þ¤¹¡£
¤³¤Î¥Ü¥¿¥ó¤ò²¡²¼¤·¤¿ºÝ¤Ëɽ¼¨¤µ¤ì¤ë¤â¤Î¤¬¡¢¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¤Ç¤¹¡£
¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¤Ï¡¢¡Öandroid.view.Menu¡×¥¯¥é¥¹¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¹¡£
  • ¹àÌܤ¬6¸Ä°Ê²¼¤Î¾ì¹ç
  • ¹àÌܤ¬7¸Ä°Ê¾å¤Î¾ì¹ç
¡Ö¤½¤Î¾¡×¤Î¹àÌܤˡ¢6ÈÖÌܰʹߤ¬¤Þ¤È¤á¤é¤ì¤Þ¤¹¡£

ɽ¼¨ÊýË¡

onCreateOptionsMenu

Activity¥¯¥é¥¹¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡¢¡ÖonCreateOptionsMenu¡×¤ò¥ª¡¼¥Ð¡¼¥é¥¤¥É¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥á¥Ë¥å¡¼¤òºîÀ®¤·¤Þ¤¹¡£
@Override
public boolean onCreateOptionsMenu(Menu menu) {}

¥á¥Ë¥å¡¼¤ÎÄɲÃ

MenuItem add(int groupId, int itemId, int order, CharSequence title)¤Î¥á¥½¥Ã¥É¤ò¸Æ¤Ö¤³¤È¤Ç¡¢1¸Ä¤Î¥á¥Ë¥å¡¼¤òÄɲä·¤Þ¤¹¡£
private static final int MENU_ID_01 = Menu.FIRST;

@Override
public boolean onCreateOptionsMenu(Menu menu) {
	boolean result = super.onCreateOptionsMenu(menu);
	// ¥ª¥×¥·¥ç¥ó¥á¥Ë¥å¡¼¤ÎÆâÍƤòÀßÄꤹ¤ë
	menu.add(Menu.NONE, MENU_ID_01, Menu.NONE, "ÄɲÃ").setIcon(android.R.drawable.ic_menu_add);
	return result;
}
°ú¿ôÀâÌÀ
groupId¥°¥ë¡¼¥×ID
itemId¹àÌÜID
order¥á¥Ë¥å¡¼Æâ¤Ç¤Îɽ¼¨½ç
title¥á¥Ë¥å¡¼Ì¾
¢¨Menu.NONE: ¥°¥ë¡¼¥×ID¤ä¡¢É½¼¨½ç¤òÀßÄꤹ¤ëɬÍפ¬¤Ê¤¤¾ì¹ç¤Ë»ÈÍÑ(Menu¥¯¥é¥¹¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ëÄê¿ô)

¥á¥Ë¥å¡¼¥¢¥¤¥³¥ó

  • Android API¤Î¥ê¥Õ¥¡¥ì¥ó¥¹
    • ÍøÍѲÄǽ¤Ê¥¢¥¤¥³¥ó¤¬¤Þ¤È¤á¤é¤ì¤Æ¤¤¤Þ¤¹¡£
    • ¤³¤ì¤ò¸«¤Æ¤âÀ°¿ôÃͤ¬½ñ¤¤¤Æ¤¢¤ë¤À¤±¤Ç¡¢¤É¤ó¤Ê²èÁü¤«Ê¬¤«¤ê¤Þ¤»¤ó¡£

ÁªÂò»þ¤ÎÆ°ºî

onOptionsItemSelected

¥á¥Ë¥å¡¼¹àÌܤ¬ÁªÂò¤µ¤ì¤ë¤È¡¢Activity¥¯¥é¥¹¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡ÖonOptionsItemSelected¡×¤¬¸Æ¤Ð¤ì¤Þ¤¹¡£
¤³¤Î¥á¥½¥Ã¥É¤ò¥ª¡¼¥Ð¥é¥¤¥É¤¹¤ë¤³¤È¤Ç¡¢Æ°ºî¤òÀßÄꤷ¤Þ¤¹¡£
private static final int MENU_ID_01 = Menu.FIRST;

@Override
public boolean onOptionsItemSelected(MenuItem item) {
	AlertDialog.Builder dialog = new AlertDialog.Builder(this);

	switch (item.getItemId()) {
	case MENU_ID_01:
		// ¥À¥¤¥¢¥í¥°¤Î¥¿¥¤¥È¥ë¤òÀßÄꤹ¤ë
		dialog.setTitle("ÁªÂò¾ðÊó");
		// ¥À¥¤¥¢¥í¥°¤Î¥á¥Ã¥»¡¼¥¸¤òÀßÄꤹ¤ë
		dialog.setMessage("Äɲåá¥Ë¥å¡¼¤¬ÁªÂò¤µ¤ì¤Þ¤·¤¿¡£");
		// ¥À¥¤¥¢¥í¥°¤Î¥¢¥¤¥³¥ó¤òÀßÄꤹ¤ë
		dialog.setIcon(android.R.drawable.ic_dialog_info);
		break;
	default:
		return false;
        }
        // ¹ÎÄê¥Ü¥¿¥ó¤Î̾Á°¤È¡¢²¡²¼¤·¤¿»þ¤ÎÆ°ºî¤òÀßÄꤹ¤ë
        dialog.setPositiveButton("¤Ï¤¤", new DialogInterface.OnClickListener() {
	    @Override
	    public void onClick(DialogInterface dialog, int which) {
		dialog.dismiss();
	    }
        });
        // ¥À¥¤¥¢¥í¥°¤òɽ¼¨¤¹¤ë
        dialog.show();
}

¥µ¥Ö¥á¥Ë¥å¡¼

  • ¥Õ¥¡¥¤¥ë¥á¥Ë¥å¡¼¤ò²¡²¼¡Êº¸¡Ë¡¢ÊÔ½¸¥á¥Ë¥å¡¼¤ò²¡²¼¡Ê±¦¡Ë

public class OptionMenuSubActivity extends Activity {
	private static final int MENU_ITEM_FILE = Menu.FIRST;
	private static final int MENU_ITEM_EDIT = Menu.FIRST + 10;
	private static final int MENU_ITEM_HELP = Menu.FIRST + 20;

	private static final int MENU_ITEM_FILE_NEW = MENU_ITEM_FILE + 1;
	private static final int MENU_ITEM_FILE_OPEN = MENU_ITEM_FILE + 2;
	private static final int MENU_ITEM_FILE_SAVE = MENU_ITEM_FILE + 3;;
	private static final int MENU_ITEM_EDIT_UNDO = MENU_ITEM_EDIT + 1;
	private static final int MENU_ITEM_EDIT_REDO = MENU_ITEM_EDIT + 2;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.optionmenu);
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		boolean result = super.onCreateOptionsMenu(menu);

		SubMenu fileMenu = menu.addSubMenu(Menu.NONE, MENU_ITEM_FILE, Menu.NONE, "¥Õ¥¡¥¤¥ë");
		SubMenu editMenu = menu.addSubMenu(Menu.NONE, MENU_ITEM_EDIT, Menu.NONE, "ÊÔ½¸");
		menu.add(Menu.NONE, MENU_ITEM_HELP, Menu.NONE, "¥Ø¥ë¥×");

		fileMenu.add(Menu.NONE, MENU_ITEM_FILE_NEW, Menu.NONE, "¿·µ¬ºîÀ®");
		fileMenu.add(Menu.NONE, MENU_ITEM_FILE_OPEN, Menu.NONE, "³«¤¯");
		fileMenu.add(Menu.NONE, MENU_ITEM_FILE_SAVE, Menu.NONE, "Êݸ");

		editMenu.add(Menu.NONE, MENU_ITEM_EDIT_UNDO, Menu.NONE, "¼è¤ê¾Ã¤·");
		editMenu.add(Menu.NONE, MENU_ITEM_EDIT_REDO, Menu.NONE, "ºÆÊÔ½¸");

		return result;
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch (item.getItemId()) {
		case MENU_ITEM_FILE:
			// ¥Õ¥¡¥¤¥ë¤¬²¡¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case MENU_ITEM_EDIT:
			// ÊÔ½¸¤¬²¡¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case MENU_ITEM_HELP:
			// ¥Ø¥ë¥×¤¬²¡¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case MENU_ITEM_FILE_NEW:
			// ¿·µ¬ºîÀ®¤¬²¡¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case MENU_ITEM_FILE_OPEN:
			// ³«¤¯¤¬²¡¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case MENU_ITEM_FILE_SAVE:
			// Êݸ¤¬²¡¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case MENU_ITEM_EDIT_UNDO:
			// ¼è¤ê¾Ã¤·¤¬²¡¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case MENU_ITEM_EDIT_REDO:
			// ºÆÊÔ½¸¤¬²¡¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		}

		return true;
	}
}

¥Á¥§¥Ã¥¯¥Ü¥Ã¥¯¥¹¥á¥Ë¥å¡¼


public class OptionMenuCheckActivity extends Activity {
	private static final int STYLE_BOLD_ID = Menu.FIRST;
	private static final int STYLE_ITALIC_ID = Menu.FIRST + 1;
	private boolean ceckedBold = false;
	private boolean ceckedItalic = true;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.optionmenu);
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		SubMenu subMenuStyle = menu.addSubMenu("¥Õ¥©¥ó¥È¥¹¥¿¥¤¥ë").setIcon(android.R.drawable.ic_menu_edit);
		subMenuStyle.add(Menu.NONE, STYLE_BOLD_ID, Menu.NONE, "Bold")
				.setCheckable(true).setChecked(ceckedBold);
		subMenuStyle.add(Menu.NONE, STYLE_ITALIC_ID, Menu.NONE, "Italic")
				.setCheckable(true).setChecked(ceckedItalic);

		return true;
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch (item.getItemId()) {
		case STYLE_BOLD_ID:
			ceckedBold = !ceckedBold;
			item.setChecked(!item.isChecked());
			// ¤³¤³¤ËBold¤¬ÁªÂò¤µ¤ì¤¿»þ¤Î½èÍý¤òµ­½Ò¤¹¤ë¡£
			return true;
		case STYLE_ITALIC_ID:
			ceckedItalic = !ceckedItalic;
			item.setChecked(!item.isChecked());
			// ¤³¤³¤ËItalic¤¬ÁªÂò¤µ¤ì¤¿»þ¤Î½èÍý¤òµ­½Ò¤¹¤ë¡£
			return true;
		}
		return false;
	}
}
¥Á¥§¥Ã¥¯¥Ü¥Ã¥¯¥¹¥á¥Ë¥å¡¼¤ÎÁªÂò¾õÂÖ¤¬¡¢¥á¥Ë¥å¡¼¤¬ºÆɽ¼¨¤µ¤ì¤¿¾ì¹ç¤Ë¤â°ú¤­·Ñ¤¬¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤ì¤Ï¡¢¥Á¥§¥Ã¥¯¥Ü¥Ã¥¯¥¹¤Î¾õÂÖ¤òÊÝ»ý¤¹¤ëÊÑ¿ô¤òÍÑ°Õ¤·¤Æ¡¢¥Á¥§¥Ã¥¯¾õÂÖ¤òÀßÄꤹ¤ë¤è¤¦¤Ëµ­½Ò¤·¤Æ¤¤¤ë¤«¤é¤Ç¤¹¡£
private boolean ceckedBold = false;
private boolean ceckedItalic = true;

¥á¥Ë¥å¡¼¥°¥ë¡¼¥×

  • ¥«¥é¡¼¥á¥Ë¥å¡¼¤ò²¡²¼¡Êº¸¡Ë¡¢¥¹¥¿¥¤¥ë¥á¥Ë¥å¡¼¤ò²¡²¼¡Ê±¦¡Ë

public class OptionMenuRadioActivity extends Activity {
	private static final int COLOR_MENU_GROUP = Menu.FIRST + 1;
	private static final int COLOR_RED_ID = Menu.FIRST + 1;
	private static final int COLOR_BLUE_ID = Menu.FIRST + 2;

	private static final int STYLE_MENU_GROUP = Menu.FIRST + 2;
	private static final int STYLE_BOLD_ID = Menu.FIRST + 3;
	private static final int STYLE_ITALIC_ID = Menu.FIRST + 4;

	private boolean ceckedBold = false;
	private boolean ceckedItalic = true;
	private int selectedColorId = COLOR_BLUE_ID;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.optionmenu);
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		SubMenu subMenuColor = menu.addSubMenu("¥«¥é¡¼").setIcon(android.R.drawable.ic_menu_crop);
		subMenuColor.add(COLOR_MENU_GROUP, COLOR_RED_ID, 0, "ÀÖ");
		subMenuColor.add(COLOR_MENU_GROUP, COLOR_BLUE_ID, 0, "ÀÄ");
		subMenuColor.setGroupCheckable(COLOR_MENU_GROUP, true, true);

		SubMenu subMenuStyle = menu.addSubMenu("¥¹¥¿¥¤¥ë").setIcon(android.R.drawable.ic_menu_edit);
		subMenuStyle.add(STYLE_MENU_GROUP, STYLE_BOLD_ID, 0, "Bold");
		subMenuStyle.add(STYLE_MENU_GROUP, STYLE_ITALIC_ID, 0, "Italic");
		subMenuStyle.setGroupCheckable(STYLE_MENU_GROUP, true, false);

		return true;
	}

	@Override
	public boolean onPrepareOptionsMenu(Menu menu) {
		menu.findItem(selectedColorId).setChecked(true);
		menu.findItem(STYLE_BOLD_ID).setChecked(ceckedBold);
		menu.findItem(STYLE_ITALIC_ID).setChecked(ceckedItalic);
		return true;
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch (item.getItemId()) {
		case COLOR_RED_ID:
			selectedColorId = COLOR_RED_ID;
			// ÀÖ¤¬ÁªÂò¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case COLOR_BLUE_ID:
			selectedColorId = COLOR_BLUE_ID;
			// ÀĤ¬ÁªÂò¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case STYLE_BOLD_ID:
			ceckedBold = !ceckedBold;
			// Bold¤¬ÁªÂò¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		case STYLE_ITALIC_ID:
			ceckedItalic = !ceckedItalic;
			// Italic¤¬ÁªÂò¤µ¤ì¤¿»þ¤Î½èÍý
			break;
		}

		return true;
	}
}

¥á¥Ë¥å¡¼¥°¥ë¡¼¥×¤òÁàºî¤¹¤ë¥á¥½¥Ã¥É

  • void removeGroup(int groupId)
    • Ʊ¤¸¥á¥Ë¥å¡¼¥°¥ë¡¼¥×¤Ë°¤¹¤ë¥á¥Ë¥å¡¼¹àÌܤò¡¢°ì³ç¤·¤Æºï½ü¤¹¤ë¡£
  • void setGroupCheckable(int group, boolean checkable, boolean exclusive)
    • checkable°ú¿ô¤òtrue¤Ë»ØÄꤷ¤Æ¤³¤Î¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤È¡¢ Ʊ¤¸¥á¥Ë¥å¡¼¥°¥ë¡¼¥×¤Ë°¤¹¤ë¥á¥Ë¥å¡¼¹àÌܤò°ì³ç¤·¤Æ¡¢¥Á¥§¥Ã¥¯¥Ü¥Ã¥¯¥¹¤ä¥é¥¸¥ª¥Ü¥¿¥ó¤È¤·¤Æɽ¼¨¤¹¤ë¤è¤¦¤ËÀßÄê¤Ç¤­¤ë¡£
    • exclusive°ú¿ô¤¬true¤Î¾ì¹ç¤Ï¥Á¥§¥Ã¥¯¥Ü¥Ã¥¯¥¹¤¬¡¤false¤Î¾ì¹ç¤Ï¥°¥ë¡¼¥×Æâ¤Î¥Ü¥¿¥ó¤¬£±¤Ä¤À¤±ÁªÂò¤µ¤ì¤ë¥é¥¸¥ª¥Ü¥¿¥ó¤¬¡¢É½¼¨¤µ¤ì¤ë¡£
    • checkable°ú¿ô¤¬false¤Î¾ì¹ç¤Ï¡¢exclusive°ú¿ô¤ÎÃͤˤ«¤«¤ï¤é¤º¡¢¾ï¤ËÄ̾ï¤Î¥á¥Ë¥å¡¼¤¬É½¼¨¤µ¤ì¤ë¡£
  • void setGroupEnabled(int group, boolean enabled)
    • enabled°ú¿ô¤ÎÃͤ˱þ¤¸¤Æ¡¢Æ±¤¸¥á¥Ë¥å¡¼¥°¥ë¡¼¥×¤Ë°¤¹¤ë¥á¥Ë¥å¡¼¹àÌܤò°ì³ç¤·¤Æ¡¢ÁªÂò²Äǽ¤Þ¤¿¤ÏÁªÂòÉԲĤËÀßÄꤹ¤ë¡£
  • void setGroupVisible(int group, boolean visible)
    • visible°ú¿ô¤ÎÃͤ˱þ¤¸¤Æ¡¢Æ±¤¸¥á¥Ë¥å¡¼¥°¥ë¡¼¥×¤Ë°¤¹¤ë¥á¥Ë¥å¡¼¹àÌܤò°ì³ç¤·¤Æ¡¢É½¼¨¤Þ¤¿¤ÏÈóɽ¼¨¤ËÀßÄꤹ¤ë¡£

¤³¤Î¥Ú¡¼¥¸¤Ø¤Î¥³¥á¥ó¥È

5S83DK <a href="http://lsfspfeelugo.com/">lsfspfeelugo</a>, [url=http://pusgqvybzzie.com/]pusgqvybzzie[/url], [link=http://ngetbhemkdvc.com/]ngetbhemkdvc[/link], http://wyzlurmkdgsu.com/

0
Posted by dtqtuor 2013ǯ11·î14Æü(ÌÚ) 18:13:04 ÊÖ¿®

¥³¥á¥ó¥È¤ò¤«¤¯


¡Öhttp://¡×¤ò´Þ¤àÅê¹Æ¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ÍøÍѵ¬Ìó¤ò¤´³Îǧ¤Î¤¦¤¨¤´µ­Æþ²¼¤µ¤¤

´ÉÍý¿Í/Éû´ÉÍý¿Í¤Î¤ßÊÔ½¸¤Ç¤­¤Þ¤¹