【问题标题】:android: any tutorials on creating menus for apps?android:有关于为应用程序创建菜单的教程吗?
【发布时间】:2010-04-07 16:46:35
【问题描述】:

我需要一个非常简单的菜单,它可能只包含一个或两个项目:设置/选项,按下其中一个应该会显示一些客户定义的参数(是否称为对话框),例如显示的结果数量。有没有关于创建这种菜单的好教程?我查看了 android 中的“记事本”示例,它并没有真正的帮助。

【问题讨论】:

    标签: android menu optionmenu


    【解决方案1】:

    根据您的要求,这些是“选项菜单”或“上下文菜单”,创建它们非常容易。这是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)。
    猜你喜欢
    • 2013-07-26
    • 2012-09-17
    • 2010-10-29
    • 1970-01-01
    • 2011-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-25
    相关资源
    最近更新 更多