belongs to Maven artifact com.android.support:wear:28.0.0-alpha1
WearableDrawerLayout
public
class
WearableDrawerLayout
extends FrameLayout
implements
View.OnLayoutChangeListener,
NestedScrollingParent
java.lang.Object | ||||
↳ | android.view.View | |||
↳ | android.view.ViewGroup | |||
↳ | android.widget.FrameLayout | |||
↳ | android.support.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 NestedScrollingChild
do
this by default. To enable nested scrolling on frameworks views like ListView
, set android:nestedScrollingEnabled="true"
on the view in
the layout file, or call setNestedScrollingEnabled(boolean)
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.
<android.support.wear.widget.drawer.WearableDrawerLayout [...]> <FrameLayout android:id=”@+id/content” /> <android.support.wear.widget.drawer.WearableNavigationDrawerView android:layout_width=”match_parent” android:layout_height=”match_parent” /> <android.support.wear.widget.drawer.WearableActionDrawerView android:layout_width=”match_parent” android:layout_height=”match_parent” /> </android.support.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(View)
and pass
in your drawer content view, or specify it in the app:drawerContent
XML attribute.
<android.support.wear.widget.drawer.WearableDrawerLayout [...]> <FrameLayout android:id=”@+id/content” android:layout_width=”match_parent” android:layout_height=”match_parent” /> <android.support.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” /> </android.support.wear.widget.drawer.WearableDrawerView> </android.support.wear.widget.drawer.WearableDrawerLayout>
Summary
Nested classes | |
---|---|
class |
WearableDrawerLayout.DrawerStateCallback
Listener for monitoring events about drawers. |
Inherited constants |
---|
![]()
android.view.ViewGroup
|
![]()
android.view.View
|
Inherited fields |
---|
![]()
android.view.View
|
Public constructors | |
---|---|
WearableDrawerLayout(Context context)
|
|
WearableDrawerLayout(Context context, AttributeSet attrs)
|
|
WearableDrawerLayout(Context context, AttributeSet attrs, int defStyleAttr)
|
|
WearableDrawerLayout(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)
|
Public methods | |
---|---|
void
|
addView(View child, int index, ViewGroup.LayoutParams params)
|
void
|
computeScroll()
|
int
|
getNestedScrollAxes()
|
WindowInsets
|
onApplyWindowInsets(WindowInsets insets)
|
void
|
onFlingComplete(View view)
|
boolean
|
onInterceptTouchEvent(MotionEvent ev)
|
void
|
onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom)
|
boolean
|
onNestedFling(View target, float velocityX, float velocityY, boolean consumed)
|
boolean
|
onNestedPreFling(View target, float velocityX, float velocityY)
|
void
|
onNestedPreScroll(View target, int dx, int dy, int[] consumed)
|
void
|
onNestedScroll(View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed)
|
void
|
onNestedScrollAccepted(View child, View target, int nestedScrollAxes)
|
boolean
|
onStartNestedScroll(View child, View target, int nestedScrollAxes)
|
void
|
onStopNestedScroll(View target)
|
boolean
|
onTouchEvent(MotionEvent ev)
|
void
|
setDrawerStateCallback(WearableDrawerLayout.DrawerStateCallback callback)
Sets a listener to be notified of drawer events. |
Protected methods | |
---|---|
void
|
onLayout(boolean changed, int left, int top, int right, int bottom)
|
Inherited methods | |
---|---|
![]()
android.widget.FrameLayout
| |
![]()
android.view.ViewGroup
|