我有一个带有minimun sdk 16的android
该应用程序本身运行正常,我正在调整最后的视觉细节
我注意到我的操作栏在API 16上无法正确显示
左侧是api 16的屏幕截图 右侧是api 27上的屏幕截图
如何使api 16看起来像27
答案 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>
尝试更改值进行设置
希望有帮助