api 16上的android actionbar菜单重叠

时间:2018-09-27 09:02:36

标签: android android-layout android-actionbar android-menu

我有一个带有minimun sdk 16的android
该应用程序本身运行正常,我正在调整最后的视觉细节
我注意到我的操作栏在API 16上无法正确显示

enter image description here

左侧是api 16的屏幕截图 右侧是api 27上的屏幕截图

如何使api 16看起来像27

1 个答案:

答案 0 :(得分:1)

根据新的设计准则,这是所需的行为。您正在使用appCompat,因此应该会发生。 see Menus-组件

更新:如果您仍然不希望溢出菜单与操作栏重叠,则必须从appCompat中覆盖溢出菜单样式。这可能有效

<resources>
    <style name="AppBaseTheme" parent="Theme.AppCompat.Light" />

    <style name="AppTheme" parent="AppBaseTheme">
        <item name="actionOverflowMenuStyle">@style/OverflowMenu</item>
    </style>

    <style name="OverflowMenu" parent="Widget.AppCompat.PopupMenu.Overflow">
        <item name="overlapAnchor">false</item>
   <item name="android:dropDownVerticalOffset">-4.0dip</item>
  <!-- Required for Lollipop. -->
   <item name="android:overlapAnchor">false</item>
   <item name="android:dropDownVerticalOffset">4.0dip</item>
    </style>

</resources>  

对于棒棒糖样式,必须使用值-v21。

关于右侧的边距,我查看了许多只能找到link的站点解决方案。
<item name="android:dropDownHorizontalOffset">-16dp</item> 尝试更改值进行设置

希望有帮助