SwipeDismissFrameLayout
@UiThread
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 can be used for more direct control over the feature.
Summary
Nested types |
|---|
@UiThreadImplement this callback to act on particular stages of the dismissal. |
Constants |
|
|---|---|
const Float |
DEFAULT_DISMISS_DRAG_WIDTH_RATIO = 0.33f |
Public constructors |
|---|
SwipeDismissFrameLayout(context: Context!)Simple constructor to use when creating a view from code. |
SwipeDismissFrameLayout(context: Context!, attrs: AttributeSet!)Constructor that is called when inflating a view from XML. |
SwipeDismissFrameLayout(Perform inflation from XML and apply a class-specific base style from a theme attribute. |
SwipeDismissFrameLayout(Perform inflation from XML and apply a class-specific base style from a theme attribute. |
Public functions |
|
|---|---|
Unit |
addCallback(callback: SwipeDismissFrameLayout.Callback!)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. |
Unit |
removeCallback(callback: SwipeDismissFrameLayout.Callback!)Removes a callback that was added with |
Unit |
setDismissMinDragWidthRatio(ratio: Float)Sets the minimum ratio of the screen after which the swipe gesture is treated as swipe-to-dismiss. |
Unit |
setSwipeable(swipeable: Boolean)Set the layout to be dismissible by swipe or not. |
Inherited Constants |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Constants
DEFAULT_DISMISS_DRAG_WIDTH_RATIO
const val DEFAULT_DISMISS_DRAG_WIDTH_RATIO = 0.33f: Float
Public constructors
SwipeDismissFrameLayout
SwipeDismissFrameLayout(context: Context!)
Simple constructor to use when creating a view from code.
SwipeDismissFrameLayout
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 |
attrs: AttributeSet! |
The attributes of the XML tag that is inflating the view. |
SwipeDismissFrameLayout
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 |
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. |
SwipeDismissFrameLayout
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 |
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 functions
addCallback
fun addCallback(callback: SwipeDismissFrameLayout.Callback!): Unit
Adds a callback for dismissal.
getDismissMinDragWidthRatio
fun getDismissMinDragWidthRatio(): Float
Gets the minimum ratio of the screen after which the swipe gesture is treated as swipe-to-dismiss.
isSwipeable
fun isSwipeable(): Boolean
Returns true if the frame layout can be dismissed by swipe gestures.
removeCallback
fun removeCallback(callback: SwipeDismissFrameLayout.Callback!): Unit
Removes a callback that was added with addCallback.
setDismissMinDragWidthRatio
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
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. |