【发布时间】:2010-04-07 16:46:35
【问题描述】:
我需要一个非常简单的菜单,它可能只包含一个或两个项目:设置/选项,按下其中一个应该会显示一些客户定义的参数(是否称为对话框),例如显示的结果数量。有没有关于创建这种菜单的好教程?我查看了 android 中的“记事本”示例,它并没有真正的帮助。
【问题讨论】:
标签: android menu optionmenu
我需要一个非常简单的菜单,它可能只包含一个或两个项目:设置/选项,按下其中一个应该会显示一些客户定义的参数(是否称为对话框),例如显示的结果数量。有没有关于创建这种菜单的好教程?我查看了 android 中的“记事本”示例,它并没有真正的帮助。
【问题讨论】:
标签: android menu optionmenu
根据您的要求,这些是“选项菜单”或“上下文菜单”,创建它们非常容易。这是Developers' Website 上页面的链接,解释了如何制作菜单。
这是选项菜单的基本代码示例,改编自我的游戏:
public boolean onCreateOptionsMenu(Menu menu){
// Define your menu, giving each button a unique identifier numbers
// (MENU_PAUSE, etc)
// This is called only once, the first time the menu button is clicked
menu.add(0, MENU_PAUSE, 0, "Pause").setIcon(android.R.drawable.ic_media_pause);
menu.add(0, MENU_RESUME, 0, "Resume").setIcon(android.R.drawable.ic_media_play);
return true;
}
public boolean onPrepareOptionsMenu(Menu menu){
// This is called every time the menu button is pressed. In my game, I
// use this to show or hide the pause/resume buttons depending on the
// current state
}
public boolean onOptionsItemSelected(MenuItem item){
// and this is self explanatory
boolean handled = false;
switch (item.getItemId()){
case MENU_PAUSE:
pauseGame();
handled = true;
break;
case MENU_RESUME:
resumeGame();
handled = true;
break;
}
return handled;
}
编辑:有关AlertDialogs的一些详细信息,请参阅 cmets
【讨论】:
AlertDialog。 AlertDialogs 可以有简单的文本和按钮、带有复选框的列表或类似的东西。有关简单的是/否 AlertDialog 的示例,请查看此答案 (stackoverflow.com/questions/2478517/…)。如果您需要列表,请阅读有关 Dialogs 的 Android 开发人员资源 (developer.android.com/guide/topics/ui/dialogs.html#AlertDialog)。