WearableDrawerLayout
class WearableDrawerLayout : FrameLayout, View.OnLayoutChangeListener, NestedScrollingParent
| kotlin.Any | ||||
| ↳ | android.view.View | |||
| ↳ | android.view.ViewGroup | |||
| ↳ | android.widget.FrameLayout | |||
| ↳ | androidx.wear.widget.drawer.WearableDrawerLayout |
Top-level container that allows interactive drawers to be pulled from the top and bottom edge of the window. For WearableDrawerLayout to work properly, scrolling children must send nested scrolling events. Views that implement androidx.core.view.NestedScrollingChild do this by default. To enable nested scrolling on frameworks views like android.widget.ListView, set android:nestedScrollingEnabled="true" on the view in the layout file, or call setNestedScrollingEnabled in code. This includes the main content in a WearableDrawerLayout, as well as the content inside of the drawers.
To use WearableDrawerLayout with WearableActionDrawerView or WearableNavigationDrawerView, place either drawer in a WearableDrawerLayout.
<androidx.wear.widget.drawer.WearableDrawerLayout [...]> <FrameLayout android:id=”@+id/content” /> <androidx.wear.widget.drawer.WearableNavigationDrawerView android:layout_width=”match_parent” android:layout_height=”match_parent” /> <androidx.wear.widget.drawer.WearableActionDrawerView android:layout_width=”match_parent” android:layout_height=”match_parent” /> </androidx.wear.widget.drawer.WearableDrawerLayout>
To use custom content in a drawer, place WearableDrawerView in a WearableDrawerLayout and specify the layout_gravity to pick the drawer location (the following example is for a top drawer). Note: You must either call setDrawerContent and pass in your drawer content view, or specify it in the app:drawerContent XML attribute.
<androidx.wear.widget.drawer.WearableDrawerLayout [...]> <FrameLayout android:id=”@+id/content” android:layout_width=”match_parent” android:layout_height=”match_parent” /> <androidx.wear.widget.drawer.WearableDrawerView android:layout_width=”match_parent” android:layout_height=”match_parent” android:layout_gravity=”top” app:drawerContent="@+id/top_drawer_content" > <FrameLayout android:id=”@id/top_drawer_content” android:layout_width=”match_parent” android:layout_height=”match_parent” /> </androidx.wear.widget.drawer.WearableDrawerView> </androidx.wear.widget.drawer.WearableDrawerLayout>
Summary
Nested types |
|---|
|
Listener for monitoring events about drawers. |
Public constructors |
|---|
WearableDrawerLayout(context: Context!) |
WearableDrawerLayout(context: Context!, attrs: AttributeSet!) |
WearableDrawerLayout( |
WearableDrawerLayout( |
Public functions |
|
|---|---|
Unit |
addView(child: View!, index: Int, params: ViewGroup.LayoutParams!) |
Unit |
|
Int |
|
WindowInsets! |
onApplyWindowInsets(insets: WindowInsets!) |
Unit |
onFlingComplete(view: View!) |
Boolean |
|
Unit |
|
Boolean |
onNestedFling( |
Boolean |
onNestedPreFling(target: View, velocityX: Float, velocityY: Float) |
Unit |
onNestedPreScroll(target: View, dx: Int, dy: Int, consumed: IntArray) |
Unit |
|
Unit |
onNestedScrollAccepted(child: View, target: View, axes: Int) |
Boolean |
onStartNestedScroll(child: View, target: View, axes: Int) |
Unit |
onStopNestedScroll(target: View) |
Boolean |
onTouchEvent(ev: MotionEvent!) |
Unit |
Sets a listener to be notified of drawer events. |
Inherited Constants |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Public constructors
WearableDrawerLayout
WearableDrawerLayout(
context: Context!,
attrs: AttributeSet!,
defStyleAttr: Int
)
WearableDrawerLayout
WearableDrawerLayout(
context: Context!,
attrs: AttributeSet!,
defStyleAttr: Int,
defStyleRes: Int
)
Public functions
onLayoutChange
fun onLayoutChange(
v: View!,
left: Int,
top: Int,
right: Int,
bottom: Int,
oldLeft: Int,
oldTop: Int,
oldRight: Int,
oldBottom: Int
): Unit
onNestedFling
fun onNestedFling(
target: View,
velocityX: Float,
velocityY: Float,
consumed: Boolean
): Boolean
onNestedScroll
fun onNestedScroll(
target: View,
dxConsumed: Int,
dyConsumed: Int,
dxUnconsumed: Int,
dyUnconsumed: Int
): Unit
setDrawerStateCallback
fun setDrawerStateCallback(
callback: WearableDrawerLayout.DrawerStateCallback!
): Unit
Sets a listener to be notified of drawer events.