一、新课讲解
菜单在安卓应用程序中占有比较重要的位置。原生安卓提供了三种类型的菜单:选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu)。有兴趣的同学可以玩一玩Navigation Drawer(导航抽屉),类似于滑动菜单。
二、课程讲解
(一)菜单概述
菜单在安卓应用程序中占有比较重要的位置。原生安卓提供了三种类型的菜单:选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu)。在实际安卓项目中,往往会使用SlidingMenu(滑动菜单),但是要求我们学习如何使用第三方开源库。
1、选项菜单
创建选项菜单
@Override
public boolean onCreateOptionsMenu(Menu menu) {
return super.onCreateOptionsMenu(menu);
}
## 2、上下文菜单
给控件注册上下文菜单
registerForContextMenu(tvWelcome);
3、子菜单
添加子菜单
menu.addSubMenu(1, 1, 1, “设置红色”);
(二)选项菜单案例演示
1、创建安卓应用
基于Empty Activity模板创建安卓应用 - OptionsMenuDemo
单击【Finish】按钮
2、准备图片素材
将背景图片拷贝到drawable目录
3、字符串资源文件
字符串资源文件 - strings.xml
选项菜单演示
弹出选项菜单
4 、主布局资源文件
主布局资源文件 - activity_main.xml
<?xml version="1.0" encoding="utf-8"?>5、主界面类实现功能
主界面类 - MainActivity
创建选项菜单
创建菜单项选择事件方法
查看完整代码
package net.hw.optionsmenu;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Toast;
import android.widget.Toolbar;
public class MainActivity extends AppCompatActivity {
private static final int NEW_FILE_MENU = 1; // 新建文件菜单标识
private s