前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >速读原著-Android应用开发入门教程(菜单的使用)

速读原著-Android应用开发入门教程(菜单的使用)

作者头像
cwl_java
发布2020-01-15 10:36:27
3410
发布2020-01-15 10:36:27
举报
文章被收录于专栏:cwl_Javacwl_Java

6.5 菜单的使用

菜单是屏幕中比较独立的一个元素,它和普通的控件略有不同,很多 GUI 系统都对菜单有单独的接口和运作方式。在 Android 中具有单独接口,用于在活动中使用菜单。

本例使用一个菜单来控制按钮的背景颜色,从其中可以了解如何在应用程序中使用菜单。

在这里插入图片描述
在这里插入图片描述

建立菜单和调用的代码片段如下所示:

代码语言:javascript
复制
public class TestMenu extends Activity {
    private static final String TAG = "TestMenu";
    private Button mButton;
    public static final int RED_MENU_ID = Menu.FIRST;
    public static final int GREEN_MENU_ID = Menu.FIRST + 1;
    public static final int BLUE_MENU_ID = Menu.FIRST + 2;
    public TestMenu() { }
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.testmenu);
        mButton = (Button) findViewById(R.id.color_button);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        menu.add(0, RED_MENU_ID, 0, R.string.red);
        menu.add(0, GREEN_MENU_ID, 0, R.string.green);
        menu.add(0, BLUE_MENU_ID, 0, R.string.blue);
        return true;
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case RED_MENU_ID:
                mButton.setBackgroundColor(Color.RED);
                mButton.setText(R.string.red);
                return true;
            case GREEN_MENU_ID:
                mButton.setBackgroundColor(Color.GREEN);
                mButton.setText(R.string.green);
                return true;
            case BLUE_MENU_ID:
                mButton.setBackgroundColor(Color.BLUE);
                mButton.setText(R.string.blue);
                return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

使用菜单主要通过重载 Activity 中的两个函数来实现:

代码语言:javascript
复制
public boolean onCreateOptionsMenu(Menu menu) 
public boolean onOptionsItemSelected(MenuItem item)

onCreateOptionsMenu()用于在建立菜单时进行设置,建立时为每一个按钮设置 ID,菜单项被选择时调用onOptionsItemSelected(),通过 MenuItem 类的 getItemId()函数获得这个菜单的 ID,继续进行处理。

菜单类在 Android 中表示为 android.view.Menu 类。使用这个类可以进行一些更为细节的设置和操作。

代码语言:javascript
复制
abstract MenuItem add(int groupId, int itemId, int order, CharSequence title) 
abstract MenuItem add(int groupId, int itemId, int order, int titleRes)

add()的第 1、2 个参数是整数值,分别代表按钮项的组 ID 和选项 ID,第 3 个参数用于设置按钮上的文件。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-01-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 6.5 菜单的使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档