工作生活

Toolbar添加菜单栏Menu

2019-07-03  本文已影响0人  南子李

1.在XML中创建菜单项,路径res/menu/main_menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/page_up"
        android:title="up"
        android:icon="@drawable/up"
        android:checkable="true"
        app:showAsAction="ifRoom"/>
</menu>

2.Activity中关联菜单布局

1)关联菜单布局

public boolean onCreateOptionsMenu(Menu menu) {
        //导入菜单布局
        getMenuInflater().inflate(R.menu.main_menu, menu);
        return true;
    }

2)设置item选中监听事件

 public boolean onOptionsItemSelected(MenuItem item) {
        //创建菜单项的点击事件
        switch (item.getItemId()) {
        case R.id.page_up:
            Toast.makeText(this, "选择了page_up",Toast.LENGTH_SHORT).show();
            break;
        default:
            break;
        }
        return super.onOptionsItemSelected(item);
    }

3.Activity的主题style为NoActionBar

<style name="BaseNoActionBar" parent="Theme.AppCompat.Light.NoActionBar">

需拿到Toolbar对象并调用setSupportActionBar(toolbar)才能执行上面两个方法,实现Toolbar和Menu的关联

Toolbar toolbar = findViewById(R.id.toolbar); 
setSupportActionBar(toolbar);

4.Android菜单Menu的三种类型

选项菜单(Option Menu)、上下文菜单(Context Menu)、子菜单(Sub Menu)
注:其中,Sub Menu就是将功能相同的操作分组显示,他作用在OptionsMenu上,是OptionsMenu的二级菜单

上一篇 下一篇

猜你喜欢

热点阅读