Google is committed to advancing racial equity for Black communities. See how.

PopupWindowCompat

class PopupWindowCompat
kotlin.Any
   ↳ androidx.core.widget.PopupWindowCompat

Helper for accessing features in PopupWindow.

Summary

Public methods

static Boolean
getOverlapAnchor(@NonNull popupWindow: PopupWindow)

Returns whether the popup window should overlap its anchor view when displayed as a drop-down.

static Int
getWindowLayoutType(@NonNull popupWindow: PopupWindow)

Returns the layout type for this window.

static Unit
setOverlapAnchor(@NonNull popupWindow: PopupWindow, overlapAnchor: Boolean)

Sets whether the popup window should overlap its anchor view when displayed as a drop-down.

static Unit
setWindowLayoutType(@NonNull popupWindow: PopupWindow, layoutType: Int)

Set the layout type for this window.

static Unit
showAsDropDown(@NonNull popup: PopupWindow, @NonNull anchor: View, xoff: Int, yoff: Int, gravity: Int)

Display the content view in a popup window anchored to the bottom-left corner of the anchor view offset by the specified x and y coordinates.

Public methods

getOverlapAnchor

static fun getOverlapAnchor(@NonNull popupWindow: PopupWindow): Boolean

Returns whether the popup window should overlap its anchor view when displayed as a drop-down.

Return
Boolean Whether the popup should overlap its anchor.

getWindowLayoutType

static fun getWindowLayoutType(@NonNull popupWindow: PopupWindow): Int

Returns the layout type for this window.

setOverlapAnchor

static fun setOverlapAnchor(
    @NonNull popupWindow: PopupWindow,
    overlapAnchor: Boolean
): Unit

Sets whether the popup window should overlap its anchor view when displayed as a drop-down.

Parameters
overlapAnchor Boolean: Whether the popup should overlap its anchor.

setWindowLayoutType

static fun setWindowLayoutType(
    @NonNull popupWindow: PopupWindow,
    layoutType: Int
): Unit

Set the layout type for this window. This value will be passed through to android.view.WindowManager.LayoutParams#type therefore the value should match any value android.view.WindowManager.LayoutParams#type accepts.

Parameters
layoutType Int: Layout type for this window.

showAsDropDown

static fun showAsDropDown(
    @NonNull popup: PopupWindow,
    @NonNull anchor: View,
    xoff: Int,
    yoff: Int,
    gravity: Int
): Unit

Display the content view in a popup window anchored to the bottom-left corner of the anchor view offset by the specified x and y coordinates. If there is not enough room on screen to show the popup in its entirety, this method tries to find a parent scroll view to scroll. If no parent scroll view can be scrolled, the bottom-left corner of the popup is pinned at the top left corner of the anchor view.

If the view later scrolls to move anchor to a different location, the popup will be moved correspondingly.

Parameters
popup PopupWindow: the PopupWindow to show
anchor View: the view on which to pin the popup window
xoff Int: A horizontal offset from the anchor in pixels
yoff Int: A vertical offset from the anchor in pixels
gravity Int: Alignment of the popup relative to the anchor