SwipeDismissFrameLayout

@UiThread public class SwipeDismissFrameLayout extends DismissibleFrameLayout


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 can be used for more direct control over the feature.

Summary

Nested types

SwipeDismissFrameLayout.Callback

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

Constants

static final float

Public constructors

Simple constructor to use when creating a view from code.

Constructor that is called when inflating a view from XML.

SwipeDismissFrameLayout(
    Context context,
    AttributeSet attrs,
    int defStyle
)

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

SwipeDismissFrameLayout(
    Context context,
    AttributeSet attrs,
    int defStyle,
    int defStyleRes
)

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

Public methods

void

Adds a callback for dismissal.

float

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

boolean

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

void

Removes a callback that was added with addCallback.

void

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

void
setSwipeable(boolean swipeable)

Set the layout to be dismissible by swipe or not.

Inherited methods

From class DismissibleFrameLayout
@Override boolean
canScrollHorizontally(int direction)
boolean

Returns true if the frame layout would be dismissed with back button click

boolean

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

@Override boolean
@Override boolean
final @UiThread void

Registers a callback for dismissal.

@Override void
requestDisallowInterceptTouchEvent(boolean disallowIntercept)

Following methods overriding are only required with swipe-to-dismiss to handle touch event for detect swipe gesture.

final void
setBackButtonDismissible(boolean backButtonDismissible)

Sets the frame layout to be back button dismissible or not.

final void
setSwipeDismissible(boolean swipeDismissible)

Sets the frame layout to be swipe dismissible or not.

final @UiThread void

Removes a callback that was added with registerCallback.

From class FrameLayout
From class