ToolBar中弹出菜单与ToolBar的位置设置

<!--溢出[弹出]菜单样式 parent相当于继承【可以不要parent】-->
<style name="OverflowMenuStyle"   parent="@style/Widget.AppCompat.PopupMenu.Overflow">
  <!-- 是否覆盖锚点,默认为true,即盖住Toolbar -->
  <item name="overlapAnchor">false</item>
  <item name="android:dropDownWidth">wrap_content</item>
  <item name="android:paddingRight">5dp</item>
  <!-- 弹出层背景颜色 -->
  <item name="android:popupBackground">@color/darkturquoise</item>
  <!-- 弹出层垂直方向上的偏移,即在竖直方向上距离Toolbar的距离,值为负则会盖住Toolbar -->
  <item name="android:dropDownVerticalOffset">5dp</item>
  <!-- 弹出层水平方向上的偏移,即距离屏幕左边的距离,负值会导致右边出现空隙 --> 
  <item name="android:dropDownHorizontalOffset">0dp</item>
  <!-- 设置弹出菜单文字颜色 -->
  <item name="android:textColor">@color/white</item>
</style>

其中

  <!-- 是否覆盖锚点,默认为true,即盖住Toolbar -->
  <item name="overlapAnchor">false</item>

一直在用的是

  <!-- 是否覆盖锚点,默认为true,即盖住Toolbar -->
  <item name="android:overlapAnchor">false</item>

然后一直提示

image.png

然后换成上面的就恢复正常,不再提示。
并且这个参数的默认值是true,即如果没有这个参数,是覆盖ToolBar的,如下图所示:

image.png

把参数设置为false后,效果如下:

image.png

并且下面两个参数也可以设置锚点,即弹出菜单相对于ToolBar的位置

  <!-- 弹出层垂直方向上的偏移,即在竖直方向上距离Toolbar的距离,值为负则会盖住Toolbar -->
  <item name="android:dropDownVerticalOffset">5dp</item>
  <!-- 弹出层水平方向上的偏移,即距离屏幕左边的距离,负值会导致右边出现空隙 --> 
  <item name="android:dropDownHorizontalOffset">0dp</item>

这个问题困扰了我一个下午,Mark 一下。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,609评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,461评论 19 139
  • 概述在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似...
    liudhkk阅读 12,958评论 3 38
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 11,755评论 0 17
  • 那种对于"在路上"的渴望大概从小就在我的脑袋瓜里生着根,最兴奋的事就是坐长途火车到父亲单位过暑假,就是正在铁路建设...
    没心情就吃东西阅读 819评论 0 0