如何强制PopupMenu重叠锚点?

Zie*_*iem 9 android popupmenu android-recyclerview

如何强制PopupMenu重叠锚点?我想重新创建类似于此的东西:

菜单用法

小智 14

设置overlapAnchor允许我重叠锚点视图而不设置偏移量:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="popupMenuStyle">@style/PopupMenu</item>
</style>

<style name="PopupMenu" parent="@style/Widget.AppCompat.Light.PopupMenu">
    <item name="overlapAnchor">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)

PopupMenu将ListPopupWindow包装在其中.此ListPopupWindow使用此overlapAnchor属性包装AppCompatPopupWindow.所有这些都在支持库中.


hid*_*dro 8

替代Paritosh Tonk的回答:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="popupMenuStyle">@style/Widget.AppCompat.Light.PopupMenu.Overflow</item>
</style>
Run Code Online (Sandbox Code Playgroud)

或黑暗主题:

<style name="AppTheme.Dark" parent="Theme.AppCompat.NoActionBar">
    <item name="popupMenuStyle">@style/Widget.AppCompat.PopupMenu.Overflow</item>
</style>
Run Code Online (Sandbox Code Playgroud)


Zie*_*iem 1

设置android:dropDownVerticalOffset允许我重叠锚点视图:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="popupMenuStyle">@style/PopupMenu</item>
</style>

<style name="PopupMenu" parent="@style/Widget.AppCompat.Light.PopupMenu">
    <item name="android:dropDownVerticalOffset">-36dip</item>
</style>
Run Code Online (Sandbox Code Playgroud)