我试图在Button上方显示一个PopupWindow - 这样PopupWindow的下边缘与Button的上边缘对齐。我玩过各种Gravity和getHeight的可能性,但一直都无法做到。
我原以为将引力设置为Bottom - 将PopupWindow对齐到底部,然后按钮的高度向上推动它将起作用:
popupWindow.showAtLocation(view, Gravity.LEFT|Gravity.BOTTOM, 0, button.getHeight());
但它只会将PopupWindow从屏幕底部提升一小部分,覆盖大部分按钮。
答案 0 :(得分:0)
试试这个;
<强> R.style.PopupMenu 强>
<style name="PopupMenu" parent="Widget.AppCompat.PopupMenu.Overflow">
<item name="android:itemTextAppearance">@color/red</item>
<item name="android:dropDownVerticalOffset">25dp</item>
<item name="android:listPreferredItemHeightSmall">42dp</item>
<item name="android:dropDownHorizontalOffset">16dp</item>
</style>
并将此样式应用于java代码中的PopupMenu
;
Context wrapper = new ContextThemeWrapper(getContext(), R.style.PopupMenu);
final PopupMenu popupMenu = new PopupMenu(wrapper, v);