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

SwipeDismissFrameLayout

@UiThread open class SwipeDismissFrameLayout : DismissibleFrameLayout
kotlin.Any
   ↳ android.view.View
   ↳ android.view.ViewGroup
   ↳ android.widget.FrameLayout
   ↳ androidx.wear.widget.DismissibleFrameLayout
   ↳ androidx.wear.widget.SwipeDismissFrameLayout

A layout enabling left-to-right swipe-to-dismiss, intended for use within an activity.

At least one listener must be added to act on a dismissal action. A listener will typically remove a containing view or fragment from the current activity.

To suppress a swipe-dismiss gesture, at least one contained view must be scrollable, indicating that it would like to consume any horizontal touch gestures in that direction. In this case this view will only allow swipe-to-dismiss on the very edge of the left-hand-side of the screen. If you wish to entirely disable the swipe-to-dismiss gesture, setSwipeable(boolean) can be used for more direct control over the feature.

Summary

Nested classes
abstract

Implement this callback to act on particular stages of the dismissal.

Constants
static Float

Public constructors
<init>(context: Context!)

Simple constructor to use when creating a view from code.

<init>(context: Context!, attrs: AttributeSet!)

Constructor that is called when inflating a view from XML.

<init>(context: Context!, attrs: AttributeSet!, defStyle: Int)

Perform inflation from XML and apply a class-specific base style from a theme attribute.

<init>(context: Context!, attrs: AttributeSet!, defStyle: Int, defStyleRes: Int)

Perform inflation from XML and apply a class-specific base style from a theme attribute.

Public methods
open Unit

Adds a callback for dismissal.

open Float

Gets the minimum ratio of the screen after which the swipe gesture is treated as swipe-to-dismiss.

open Boolean

Returns true if the frame layout can be dismissed by swipe gestures.

open Unit

Removes a callback that was added with addCallback(Callback).

open Unit

Sets the minimum ratio of the screen after which the swipe gesture is treated as swipe-to-dismiss.

open Unit
setSwipeable(swipeable: Boolean)

Set the layout to be dismissible by swipe or not.

Protected methods
open Unit

open Unit

open Unit

Inherited functions

Constants

DEFAULT_DISMISS_DRAG_WIDTH_RATIO

static val DEFAULT_DISMISS_DRAG_WIDTH_RATIO: Float
Value: .33f

Public constructors

<init>

SwipeDismissFrameLayout(context: Context!)

Simple constructor to use when creating a view from code.

Parameters
context Context!: The Context the view is running in, through which it can access the current theme, resources, etc.

<init>

SwipeDismissFrameLayout(
    context: Context!,
    attrs: AttributeSet!)

Constructor that is called when inflating a view from XML. This is called when a view is being constructed from an XML file, supplying attributes that were specified in the XML file. This version uses a default style of 0, so the only attribute values applied are those in the Context's Theme and the given AttributeSet.

The method onFinishInflate() will be called after all children have been added.

Parameters
context Context!: The Context the view is running in, through which it can access the current theme, resources, etc.
attrs AttributeSet!: The attributes of the XML tag that is inflating the view.

<init>

SwipeDismissFrameLayout(
    context: Context!,
    attrs: AttributeSet!,
    defStyle: Int)

Perform inflation from XML and apply a class-specific base style from a theme attribute. This constructor allows subclasses to use their own base style when they are inflating.

Parameters
context Context!: The Context the view is running in, through which it can access the current theme, resources, etc.
attrs AttributeSet!: The attributes of the XML tag that is inflating the view.
defStyle Int: An attribute in the current theme that contains a reference to a style resource that supplies default values for the view. Can be 0 to not look for defaults.

<init>

SwipeDismissFrameLayout(
    context: Context!,
    attrs: AttributeSet!,
    defStyle: Int,
    defStyleRes: Int)

Perform inflation from XML and apply a class-specific base style from a theme attribute. This constructor allows subclasses to use their own base style when they are inflating.

Parameters
context Context!: The Context the view is running in, through which it can access the current theme, resources, etc.
attrs AttributeSet!: The attributes of the XML tag that is inflating the view.
defStyle Int: An attribute in the current theme that contains a reference to a style resource that supplies default values for the view. Can be 0 to not look for defaults.
defStyleRes Int: It allows a style resource to be specified when creating the view.

Public methods

addCallback

open fun addCallback(callback: SwipeDismissFrameLayout.Callback!): Unit

Adds a callback for dismissal.

getDismissMinDragWidthRatio

open fun getDismissMinDragWidthRatio(): Float

Gets the minimum ratio of the screen after which the swipe gesture is treated as swipe-to-dismiss.

isSwipeable

open fun isSwipeable(): Boolean

Returns true if the frame layout can be dismissed by swipe gestures.

removeCallback

open fun removeCallback(callback: SwipeDismissFrameLayout.Callback!): Unit

Removes a callback that was added with addCallback(Callback).

setDismissMinDragWidthRatio

open fun setDismissMinDragWidthRatio(ratio: Float): Unit

Sets the minimum ratio of the screen after which the swipe gesture is treated as swipe-to-dismiss.

Parameters
ratio Float: the ratio of the screen at which the swipe gesture is treated as swipe-to-dismiss. should be provided as a fraction of the screen

setSwipeable

open fun setSwipeable(swipeable: Boolean): Unit

Set the layout to be dismissible by swipe or not.

Parameters
swipeable Boolean: Whether the layout should react to the swipe gesture.

Protected methods

executeDismissCanceledCallbacks

protected open fun executeDismissCanceledCallbacks(): Unit

executeDismissStartedCallbacks

protected open fun executeDismissStartedCallbacks(): Unit

executeDismissedCallbacks

protected open fun executeDismissedCallbacks(): Unit