ActionMenuView , Menu

ActionMenuView

简介

Toolbar 默认将 Menu 内容显示在右边,ActionMenuView 是将原本位于 Toolbar 或者 ActionBar 中的 Menu 内容移到自己的名下,以 ViewGroup 的姿态将一系列的 Menu Item 囊括其中,再将自己搁置于 Toolbar 容器中,这样,更方便于管理和呈现 Menu 内容。和传统的Menu不同的地方在于

基本使用

1. app.build添加v7依赖 (正常用Toolbar时就导入了_)

compile 'com.android.support:appcompat-v7:25.3.1'

2. xml中引用actionmenuview

5777390-cc199f4f2bd2b919.png

3. 将menu点击事件绑定到actionmenuview中

5777390-fe5ceb90f264f075.png

4. 为menu编写具体的展示xml文件

5777390-458efa5814d6d8d8.png
5777390-556eb09c27ad037b.png
5777390-144ada6df92603f3.png

运行效果如下:

5777390-552420cbf7c36ecd.png

5. 为menu添加图标

5777390-a6f077eae1c40cb7.png

运行效果:(发现依然是无法展示出icon的)

5777390-779cbd9dab0bf0ce.png

做出如下的修改,即可

5777390-9721c06cdf24a509.png

运行效果如下:

5777390-5f5cd511a424b84d.png

6. 改变menu的外形

注意:给Toolbar设置的popupTheme,对于Actionmenuview不太起作用了。想想也是,现在的Actionmenuview取代了Toolbar原先管理的那个Menu,而且相对独立,不受Toolbar约束;这样Actionmenuview可以显示在Toolbar的任意位置,但同时Toolbar的popupTheme也对Actionmenuview不起作用了。所以我就直接给actionmenuview设置theme控制弹窗的主题,控制它的样式为白底黑字 (尝试过给ActionMenuView设置popupTheme,但是不起作用)

5777390-e07b9f95c5d3db88.png

自定义后的效果如下:

5777390-0493b0684fcbb91a.png

Menu

默认的系统级别的widget,默认就出现在右上角。无法像ActionMenuView一样改变显示位置。

1. 创建menu文件并且书写xml文件

5777390-2784c7d6a378fdfc.png

2. 在布局文件中的toolbar定义theme,这样就可以改变系统menu的样式了

5777390-3572be813c544325.png
5777390-d6a9eed664a0a4e4.png

3. 代码中创建并且关联点击事件

5777390-195a59489cd7d969.png

最终的显示效果如下:


5777390-2222b64f609961f3.png


链接:  提取码: qv2s 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值