WearableDrawerLayout

public class WearableDrawerLayout
extends FrameLayout implements View.OnLayoutChangeListener, NestedScrollingParent

java.lang.Object
   ↳ android.view.View
     ↳ android.view.ViewGroup
       ↳ android.widget.FrameLayout
         ↳ android.support.wearable.view.drawer.WearableDrawerLayout


This class is deprecated.
use androidx.wear.widget.drawer.WearableDrawerLayout provided by the Jetpack Wear library instead.

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 View.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 WearableActionDrawer or WearableNavigationDrawer, place either drawer in a WearableDrawerLayout.

 <android.support.wearable.view.drawer.WearableDrawerLayout [...]>
     <FrameLayout
         android:id=”@+id/content” />

     <android.support.wearable.view.drawer.WearableNavigationDrawer
         android:layout_width=”match_parent”
         android:layout_height=”match_parent” />

     <android.support.wearable.view.drawer.WearableActionDrawer
         android:layout_width=”match_parent”
         android:layout_height=”match_parent” />

 </android.support.wearable.view.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 WearableDrawerView.setDrawerContent(View) and pass in your drawer content view, or specify it in the app:drawer_content XML attribute.

 <android.support.wearable.view.drawer.WearableDrawerLayout [...]>
     <FrameLayout
         android:layout_width=”match_parent”
         android:layout_height=”match_parent”
         android:id=”@+id/content” />

     <android.support.wearable.view.drawer.WearableDrawerView
         android:layout_width=”match_parent”
         android:layout_height=”match_parent”
         android:layout_gravity=”top”
         app:drawer_content="@+id/top_drawer_content" >

         <FrameLayout
             android:layout_width=”match_parent”
             android:layout_height=”match_parent”
             android:id=”@id/top_drawer_content” />

     </android.support.wearable.view.drawer.WearableDrawerView>
 </android.support.wearable.view.drawer.WearableDrawerLayout>

Summary

Nested classes

class WearableDrawerLayout.DrawerStateCallback

This class is deprecated. use androidx.wear.widget.drawer.WearableDrawerLayout provided by the Jetpack Wear library instead.  

Inherited constants

Inherited fields

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 closeDrawer(View drawer)

Close the specified drawer by animating it out of view.

void closeDrawer(int gravity)

Close the specified drawer by animating it out of view.

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 openDrawer(View drawer)

Open the specified drawer by animating it into view.

void openDrawer(int gravity)

Open the specified drawer by animating it into view.

void peekDrawer(WearableDrawerView drawer)

Peek the given WearableDrawerView, which may either be the top drawer or bottom drawer.

void peekDrawer(int gravity)

Peek the drawer.

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)
void onSizeChanged(int w, int h, int oldw, int oldh)

Inherited methods

Public constructors

WearableDrawerLayout

public WearableDrawerLayout (Context context)

Parameters
context Context

WearableDrawerLayout

public WearableDrawerLayout (Context context, 
                AttributeSet attrs)

Parameters
context Context

attrs AttributeSet

WearableDrawerLayout

public WearableDrawerLayout (Context context, 
                AttributeSet attrs, 
                int defStyleAttr)

Parameters
context Context

attrs AttributeSet

defStyleAttr int

WearableDrawerLayout

public WearableDrawerLayout (Context context, 
                AttributeSet attrs, 
                int defStyleAttr, 
                int defStyleRes)

Parameters
context Context

attrs AttributeSet

defStyleAttr int

defStyleRes int

Public methods

addView

public void addView (View child, 
                int index, 
                ViewGroup.LayoutParams params)

Parameters
child View

index int

params ViewGroup.LayoutParams

closeDrawer

public void closeDrawer (View drawer)

Close the specified drawer by animating it out of view.

Parameters
drawer View: The drawer view to close.

closeDrawer

public void closeDrawer (int gravity)

Close the specified drawer by animating it out of view.

Parameters
gravity int: Gravity.TOP to move the top drawer or Gravity.BOTTOM for the bottom.

computeScroll

public void computeScroll ()

getNestedScrollAxes

public int getNestedScrollAxes ()

Returns
int

onApplyWindowInsets

public WindowInsets onApplyWindowInsets (WindowInsets insets)

Parameters
insets WindowInsets

Returns
WindowInsets

onFlingComplete

public void onFlingComplete (View view)

Parameters
view View

onInterceptTouchEvent

public boolean onInterceptTouchEvent (MotionEvent ev)

Parameters
ev MotionEvent

Returns
boolean

onLayoutChange

public void onLayoutChange (View v, 
                int left, 
                int top, 
                int right, 
                int bottom, 
                int oldLeft, 
                int oldTop, 
                int oldRight, 
                int oldBottom)

Parameters
v View

left int

top int

right int

bottom int

oldLeft int

oldTop int

oldRight int

oldBottom int

onNestedFling

public boolean onNestedFling (View target, 
                float velocityX, 
                float velocityY, 
                boolean consumed)

Parameters
target View

velocityX float

velocityY float

consumed boolean

Returns
boolean

onNestedPreFling

public boolean onNestedPreFling (View target, 
                float velocityX, 
                float velocityY)

Parameters
target View

velocityX float

velocityY float

Returns
boolean

onNestedPreScroll

public void onNestedPreScroll (View target, 
                int dx, 
                int dy, 
                int[] consumed)

Parameters
target View

dx int

dy int

consumed int

onNestedScroll

public void onNestedScroll (View target, 
                int dxConsumed, 
                int dyConsumed, 
                int dxUnconsumed, 
                int dyUnconsumed)

Parameters
target View

dxConsumed int

dyConsumed int

dxUnconsumed int

dyUnconsumed int

onNestedScrollAccepted

public void onNestedScrollAccepted (View child, 
                View target, 
                int nestedScrollAxes)

Parameters
child View

target View

nestedScrollAxes int

onStartNestedScroll

public boolean onStartNestedScroll (View child, 
                View target, 
                int nestedScrollAxes)

Parameters
child View

target View

nestedScrollAxes int

Returns
boolean

onStopNestedScroll

public void onStopNestedScroll (View target)

Parameters
target View

onTouchEvent

public boolean onTouchEvent (MotionEvent ev)

Parameters
ev MotionEvent

Returns
boolean

openDrawer

public void openDrawer (View drawer)

Open the specified drawer by animating it into view.

Parameters
drawer View: The drawer view to open.

openDrawer

public void openDrawer (int gravity)

Open the specified drawer by animating it into view.

Parameters
gravity int: Gravity.TOP to move the top drawer or Gravity.BOTTOM for the bottom.

peekDrawer

public void peekDrawer (WearableDrawerView drawer)

Peek the given WearableDrawerView, which may either be the top drawer or bottom drawer. This should only be used after the drawer has been added as a child of the WearableDrawerLayout.

Parameters
drawer WearableDrawerView

peekDrawer

public void peekDrawer (int gravity)

Peek the drawer.

Parameters
gravity int: Gravity.TOP to peek the top drawer or Gravity.BOTTOM to peek the bottom drawer.

setDrawerStateCallback

public void setDrawerStateCallback (WearableDrawerLayout.DrawerStateCallback callback)

Sets a listener to be notified of drawer events.

Parameters
callback WearableDrawerLayout.DrawerStateCallback

Protected methods

onLayout

protected void onLayout (boolean changed, 
                int left, 
                int top, 
                int right, 
                int bottom)

Parameters
changed boolean

left int

top int

right int

bottom int

onSizeChanged

protected void onSizeChanged (int w, 
                int h, 
                int oldw, 
                int oldh)

Parameters
w int

h int

oldw int

oldh int