WearableDrawerView

public class WearableDrawerView
extends FrameLayout

java.lang.Object
   ↳ android.view.View
     ↳ android.view.ViewGroup
       ↳ android.widget.FrameLayout
         ↳ android.support.wearable.view.drawer.WearableDrawerView
Known Direct Subclasses


This class is deprecated.
use the android.support.wear.widget.drawer.WearableDrawerView provided by the Android Support Library Wear module instead.

View that contains drawer content and a peeking view for use with WearableDrawerLayout.

This view provides the ability to set its main content as well as a view shown while peeking. Specifying the peek view is entirely optional; a default is used if none are set. However, the content must be provided.

There are two ways to specify the content and peek views: by invoking setter methods on the WearableDrawerView, or by specifying the drawer_content and peek_view attributes. Examples:

 // From Java:
 drawerView.setDrawerContent(drawerContentView);
 drawerView.setPeekContent(peekContentView);

 <!-- From XML: -->
 <android.support.wearable.view.drawer.WearableDrawerView
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:layout_gravity="bottom"
     android:background="@color/red"
     app:drawer_content="@+id/drawer_content"
     app:peek_view="@+id/peek_view">

     <FrameLayout
         android:id="@id/drawer_content"
         android:layout_width="match_parent"
         android:layout_height="match_parent" />

     <LinearLayout
         android:id="@id/peek_view"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_gravity="center_horizontal"
         android:orientation="horizontal">
         <ImageView
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:src="@android:drawable/ic_media_play" />
         <ImageView
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:src="@android:drawable/ic_media_pause" />
     </LinearLayout>
 </android.support.wearable.view.drawer.WearableDrawerView>

Summary

Nested classes

@interface WearableDrawerView.DrawerState

Enumeration of possible drawer states. 

Inherited constants

From class android.view.ViewGroup
From class android.view.View

Inherited fields

From class android.view.View

Public constructors

WearableDrawerView(Context context)
WearableDrawerView(Context context, AttributeSet attrs)
WearableDrawerView(Context context, AttributeSet attrs, int defStyleAttr)
WearableDrawerView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)

Public methods

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

Returns true if this drawer has auto-peeking enabled.

void closeDrawer()

Calls the associated WearableDrawerLayout's closeDrawer(View) method on this drawer, causing it to close.

View getDrawerContent()

Returns the drawer content view.

int getDrawerState()

Gets the current WearableDrawerView.DrawerState.

boolean hasDrawerContent()
boolean isClosed()

Returns true if the drawer is fully closed.

boolean isLocked()

Returns true if the position of the drawer cannot be modified by user interaction.

boolean isOpened()

Returns true if the drawer is fully open.

boolean isPeeking()

Returns whether the drawer is either peeking or the peek view is animating open.

void lockDrawerClosed()

Prevents the user from opening the drawer, but it may still be opened programmatically.

void lockDrawerOpened()

Prevents the user from closing the drawer, but it may still be closed programmatically.

void onDrawerClosed()

Called when the drawer has settled in a completely closed state.

void onDrawerOpened()

Called when the drawer has settled in a completely open state.

void onDrawerStateChanged(int state)

Called when the WearableDrawerView.DrawerState changes.

void onPeekContainerClicked(View v)

Called when anything within the peek container is clicked.

void openDrawer()

Calls the associated WearableDrawerLayout's openDrawer(View) method on this drawer, causing it to open.

void peekDrawer()

Calls the associated WearableDrawerLayout's peekDrawer(WearableDrawerView) method on this drawer, causing it to peek.

void setCanAutoPeek(boolean canAutoPeek)

Sets whether or not the drawer can automatically adjust its peek state.

void setDrawerContent(View content)

Set the drawer content view.

void setPeekContent(View content)

Set the peek content view.

void setShouldLockWhenNotOpenOrPeeking(boolean shouldLockWhenNotOpenOrPeeking)

Sets whether this drawer should be considered locked when the user cannot see it.

void setShouldOnlyOpenWhenAtTop(boolean onlyOpenWhenAtTop)

Only allow the user to open this drawer when at the top of the scrolling content.

void setShouldPeekOnScrollDown(boolean shouldPeekOnScrollDown)

Sets whether or not this drawer should peek while scrolling down.

boolean shouldLockWhenNotOpenOrPeeking()

Returns true if this drawer should be considered locked when the user cannot see it.

boolean shouldOnlyOpenWhenAtTop()

Returns whether this drawer may only be opened by the user when at the top of the scrolling content.

boolean shouldPeekOnScrollDown()

Gets whether or not this drawer should peek while scrolling down.

void unlockDrawer()

Allows the user to open, close, and peek the drawer.

Protected methods

void onAttachedToWindow()
void onFinishInflate()

Inherited methods

From class android.widget.FrameLayout
From class android.view.ViewGroup
From class android.view.View
From class java.lang.Object
From interface android.view.ViewParent
From interface android.view.ViewManager
From interface android.graphics.drawable.Drawable.Callback
From interface android.view.KeyEvent.Callback
From interface android.view.accessibility.AccessibilityEventSource

Public constructors

WearableDrawerView

WearableDrawerView (Context context)

Parameters
context Context

WearableDrawerView

WearableDrawerView (Context context, 
                AttributeSet attrs)

Parameters
context Context

attrs AttributeSet

WearableDrawerView

WearableDrawerView (Context context, 
                AttributeSet attrs, 
                int defStyleAttr)

Parameters
context Context

attrs AttributeSet

defStyleAttr int

WearableDrawerView

WearableDrawerView (Context context, 
                AttributeSet attrs, 
                int defStyleAttr, 
                int defStyleRes)

Parameters
context Context

attrs AttributeSet

defStyleAttr int

defStyleRes int

Public methods

addView

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

Parameters
child View

index int

params ViewGroup.LayoutParams

canAutoPeek

boolean canAutoPeek ()

Returns true if this drawer has auto-peeking enabled. This will always return false for a locked drawer.

Returns
boolean

closeDrawer

void closeDrawer ()

Calls the associated WearableDrawerLayout's closeDrawer(View) method on this drawer, causing it to close.

getDrawerContent

View getDrawerContent ()

Returns the drawer content view.

Returns
View

getDrawerState

int getDrawerState ()

Gets the current WearableDrawerView.DrawerState.

Returns
int

hasDrawerContent

boolean hasDrawerContent ()

Returns
boolean

isClosed

boolean isClosed ()

Returns true if the drawer is fully closed.

Returns
boolean

isLocked

boolean isLocked ()

Returns true if the position of the drawer cannot be modified by user interaction. Specifically, a drawer cannot be opened, closed, or automatically peeked by WearableDrawerLayout. However, it can be explicitly opened, closed, and peeked by the developer. A drawer may be considered locked if the drawer is either locked open, locked closed, or is open at all and shouldLockWhenNotOpenOrPeeking() returns true.

Returns
boolean

isOpened

boolean isOpened ()

Returns true if the drawer is fully open.

Returns
boolean

isPeeking

boolean isPeeking ()

Returns whether the drawer is either peeking or the peek view is animating open.

Returns
boolean

lockDrawerClosed

void lockDrawerClosed ()

Prevents the user from opening the drawer, but it may still be opened programmatically.

lockDrawerOpened

void lockDrawerOpened ()

Prevents the user from closing the drawer, but it may still be closed programmatically.

onDrawerClosed

void onDrawerClosed ()

Called when the drawer has settled in a completely closed state. This is analogous to onDrawerClosed(View).

onDrawerOpened

void onDrawerOpened ()

Called when the drawer has settled in a completely open state. The drawer is interactive at this point. This is analogous to onDrawerOpened(View).

onDrawerStateChanged

void onDrawerStateChanged (int state)

Called when the WearableDrawerView.DrawerState changes. This is analogous to onDrawerStateChanged(int).

Parameters
state int

onPeekContainerClicked

void onPeekContainerClicked (View v)

Called when anything within the peek container is clicked. However, if a custom peek view is supplied and it handles the click, then this may not be called. The default behavior is to open the drawer.

Parameters
v View

openDrawer

void openDrawer ()

Calls the associated WearableDrawerLayout's openDrawer(View) method on this drawer, causing it to open.

peekDrawer

void peekDrawer ()

Calls the associated WearableDrawerLayout's peekDrawer(WearableDrawerView) method on this drawer, causing it to peek.

setCanAutoPeek

void setCanAutoPeek (boolean canAutoPeek)

Sets whether or not the drawer can automatically adjust its peek state. Note that locked drawers will never auto-peek, but their canAutoPeek state will be maintained through a lock/unlock cycle.

Parameters
canAutoPeek boolean

setDrawerContent

void setDrawerContent (View content)

Set the drawer content view.

Parameters
content View: The view to show when the drawer is open, or null if it should not open.

setPeekContent

void setPeekContent (View content)

Set the peek content view.

Parameters
content View: The view to show when the drawer peeks.

setShouldLockWhenNotOpenOrPeeking

void setShouldLockWhenNotOpenOrPeeking (boolean shouldLockWhenNotOpenOrPeeking)

Sets whether this drawer should be considered locked when the user cannot see it.

Parameters
shouldLockWhenNotOpenOrPeeking boolean

setShouldOnlyOpenWhenAtTop

void setShouldOnlyOpenWhenAtTop (boolean onlyOpenWhenAtTop)

Only allow the user to open this drawer when at the top of the scrolling content. If there is no scrolling content, then this has no effect. Defaults to false.

Parameters
onlyOpenWhenAtTop boolean

setShouldPeekOnScrollDown

void setShouldPeekOnScrollDown (boolean shouldPeekOnScrollDown)

Sets whether or not this drawer should peek while scrolling down. This is currently only supported for bottom drawers. Defaults to false.

Parameters
shouldPeekOnScrollDown boolean

shouldLockWhenNotOpenOrPeeking

boolean shouldLockWhenNotOpenOrPeeking ()

Returns true if this drawer should be considered locked when the user cannot see it.

Returns
boolean

shouldOnlyOpenWhenAtTop

boolean shouldOnlyOpenWhenAtTop ()

Returns whether this drawer may only be opened by the user when at the top of the scrolling content. If there is no scrolling content, then this has no effect. Defaults to false.

Returns
boolean

shouldPeekOnScrollDown

boolean shouldPeekOnScrollDown ()

Gets whether or not this drawer should peek while scrolling down. This is currently only supported for bottom drawers. Defaults to false.

Returns
boolean

unlockDrawer

void unlockDrawer ()

Allows the user to open, close, and peek the drawer.

Protected methods

onAttachedToWindow

void onAttachedToWindow ()

onFinishInflate

void onFinishInflate ()