前言
在通用的menu使用中,通常的使用方式有以下两类:
图片形式菜单和文字形式菜单,但是这两种形式并不能满足所有需求,在实际项目中也可能需要同时需要使用图片和文字,
如同下图:
本文将以两种形式介绍图片+文字实现菜单
- 自定义ActionProvider
- 通过ActionLayout定义菜单布局
先看效果:
- 自定义ActionProvider
首先自定义CustomActionProvider继承ActionProvider,因为
Toolbar
是support
包下的,所以我们要用support
下的ActionProvider
类,这个类是在support.v4
下,它是兼容Toolbar
和ActionBar
;
public class CustomActionProvider extends ActionProvider { public CustomActionProvider(Context context) { super(context); } @Override public View onCreateActionView() { return view; } }
这里需要定义一个显示的view
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="match_parent" android:background="?actionBarItemBackground" android:gravity="center"