# AppBarLayout.Behavior.DragCallback

added in[version 23.4.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact com.android.support:design:27.1.0  
Summary:[Ctors](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback#pubctors)\|[Methods](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback#)  

# AppBarLayout.Behavior.DragCallback

| This package is part of the Android[support library](https://developer.android.com/topic/libraries/support-library)which is no longer maintained. The support library has been superseded by[AndroidX](https://developer.android.com/jetpack/androidx)which is part of[Jetpack](https://developer.android.com/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider[migrating](https://developer.android.com/jetpack/androidx/migrate)existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library[class mappings](https://developer.android.com/jetpack/androidx/migrate/class-mappings).

`
public
static

abstract
class
AppBarLayout.Behavior.DragCallback
`  
`

extends Object


``


`

|---|------------------------------------------------------------------|
| java.lang.Object                                                    ||
| ↳ | android.support.design.widget.AppBarLayout.Behavior.DragCallback |

<br />

*** ** * ** ***

Callback to allow control over any[AppBarLayout](https://developer.android.com/reference/android/support/design/widget/AppBarLayout)dragging.

## Summary

|                                                                                    ### Public constructors                                                                                     ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| ` `[AppBarLayout.Behavior.DragCallback](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback#AppBarLayout.Behavior.DragCallback())`() ` |

|                                                                                                                                                                                                                                 ### Public methods                                                                                                                                                                                                                                  ||
|---------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` abstract boolean` | ` `[canDrag](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback#canDrag(android.support.design.widget.AppBarLayout))`(`[AppBarLayout](https://developer.android.com/reference/android/support/design/widget/AppBarLayout)` appBarLayout) ` Allows control over whether the given[AppBarLayout](https://developer.android.com/reference/android/support/design/widget/AppBarLayout)can be dragged or not. |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback#)From class` java.lang.Object ` |-------------------|-------------------------------| | ` Object`         | ` clone() `                   | | ` boolean`        | ` equals(Object arg0) `       | | ` void`           | ` finalize() `                | | ` final Class<?>` | ` getClass() `                | | ` int`            | ` hashCode() `                | | ` final void`     | ` notify() `                  | | ` final void`     | ` notifyAll() `               | | ` String`         | ` toString() `                | | ` final void`     | ` wait(long arg0, int arg1) ` | | ` final void`     | ` wait(long arg0) `           | | ` final void`     | ` wait() `                    | ||

## Public constructors

### AppBarLayout.Behavior.DragCallback

added in[version 23.4.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
AppBarLayout.Behavior.DragCallback ()
```

<br />

<br />

## Public methods

### canDrag

added in[version 23.4.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
boolean canDrag (AppBarLayout appBarLayout)
```

Allows control over whether the given[AppBarLayout](https://developer.android.com/reference/android/support/design/widget/AppBarLayout)can be dragged or not.

Dragging is defined as a direct touch on the AppBarLayout with movement. This call does not affect any nested scrolling.

<br />

<br />

|              Parameters               ||
|----------------|-----------------------|
| `appBarLayout` | `AppBarLayout` <br /> |

|                                               Returns                                               ||
|-----------|------------------------------------------------------------------------------------------|
| `boolean` | true if we are in a position to scroll the AppBarLayout via a drag, false if not. <br /> |

-

  ## Annotations

  - [CoordinatorLayout.DefaultBehavior](https://developer.android.com/reference/android/support/design/widget/CoordinatorLayout.DefaultBehavior)
-

  ## Interfaces

  - [AppBarLayout.OnOffsetChangedListener](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.OnOffsetChangedListener)
  - [BaseTransientBottomBar.ContentViewCallback](https://developer.android.com/reference/android/support/design/widget/BaseTransientBottomBar.ContentViewCallback)
  - [BottomNavigationView.OnNavigationItemReselectedListener](https://developer.android.com/reference/android/support/design/widget/BottomNavigationView.OnNavigationItemReselectedListener)
  - [BottomNavigationView.OnNavigationItemSelectedListener](https://developer.android.com/reference/android/support/design/widget/BottomNavigationView.OnNavigationItemSelectedListener)
  - [CoordinatorLayout.AttachedBehavior](https://developer.android.com/reference/android/support/design/widget/CoordinatorLayout.AttachedBehavior)
  - [NavigationView.OnNavigationItemSelectedListener](https://developer.android.com/reference/android/support/design/widget/NavigationView.OnNavigationItemSelectedListener)
  - [SwipeDismissBehavior.OnDismissListener](https://developer.android.com/reference/android/support/design/widget/SwipeDismissBehavior.OnDismissListener)
  - [TabLayout.OnTabSelectedListener](https://developer.android.com/reference/android/support/design/widget/TabLayout.OnTabSelectedListener)
-

  ## Classes

  - [AppBarLayout](https://developer.android.com/reference/android/support/design/widget/AppBarLayout)
  - [AppBarLayout.Behavior](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior)
  - [AppBarLayout.Behavior.DragCallback](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.DragCallback)
  - [AppBarLayout.Behavior.SavedState](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.Behavior.SavedState)
  - [AppBarLayout.LayoutParams](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.LayoutParams)
  - [AppBarLayout.ScrollingViewBehavior](https://developer.android.com/reference/android/support/design/widget/AppBarLayout.ScrollingViewBehavior)
  - [BaseTransientBottomBar](https://developer.android.com/reference/android/support/design/widget/BaseTransientBottomBar)
  - [BaseTransientBottomBar.BaseCallback](https://developer.android.com/reference/android/support/design/widget/BaseTransientBottomBar.BaseCallback)
  - [BottomNavigationView](https://developer.android.com/reference/android/support/design/widget/BottomNavigationView)
  - [BottomSheetBehavior](https://developer.android.com/reference/android/support/design/widget/BottomSheetBehavior)
  - [BottomSheetBehavior.BottomSheetCallback](https://developer.android.com/reference/android/support/design/widget/BottomSheetBehavior.BottomSheetCallback)
  - [BottomSheetBehavior.SavedState](https://developer.android.com/reference/android/support/design/widget/BottomSheetBehavior.SavedState)
  - [BottomSheetDialog](https://developer.android.com/reference/android/support/design/widget/BottomSheetDialog)
  - [BottomSheetDialogFragment](https://developer.android.com/reference/android/support/design/widget/BottomSheetDialogFragment)
  - [CollapsingToolbarLayout](https://developer.android.com/reference/android/support/design/widget/CollapsingToolbarLayout)
  - [CollapsingToolbarLayout.LayoutParams](https://developer.android.com/reference/android/support/design/widget/CollapsingToolbarLayout.LayoutParams)
  - [CoordinatorLayout](https://developer.android.com/reference/android/support/design/widget/CoordinatorLayout)
  - [CoordinatorLayout.Behavior](https://developer.android.com/reference/android/support/design/widget/CoordinatorLayout.Behavior)
  - [CoordinatorLayout.LayoutParams](https://developer.android.com/reference/android/support/design/widget/CoordinatorLayout.LayoutParams)
  - [CoordinatorLayout.SavedState](https://developer.android.com/reference/android/support/design/widget/CoordinatorLayout.SavedState)
  - [FloatingActionButton](https://developer.android.com/reference/android/support/design/widget/FloatingActionButton)
  - [FloatingActionButton.Behavior](https://developer.android.com/reference/android/support/design/widget/FloatingActionButton.Behavior)
  - [FloatingActionButton.OnVisibilityChangedListener](https://developer.android.com/reference/android/support/design/widget/FloatingActionButton.OnVisibilityChangedListener)
  - [NavigationView](https://developer.android.com/reference/android/support/design/widget/NavigationView)
  - [NavigationView.SavedState](https://developer.android.com/reference/android/support/design/widget/NavigationView.SavedState)
  - [Snackbar](https://developer.android.com/reference/android/support/design/widget/Snackbar)
  - [Snackbar.Callback](https://developer.android.com/reference/android/support/design/widget/Snackbar.Callback)
  - [SwipeDismissBehavior](https://developer.android.com/reference/android/support/design/widget/SwipeDismissBehavior)
  - [TabItem](https://developer.android.com/reference/android/support/design/widget/TabItem)
  - [TabLayout](https://developer.android.com/reference/android/support/design/widget/TabLayout)
  - [TabLayout.Tab](https://developer.android.com/reference/android/support/design/widget/TabLayout.Tab)
  - [TabLayout.TabLayoutOnPageChangeListener](https://developer.android.com/reference/android/support/design/widget/TabLayout.TabLayoutOnPageChangeListener)
  - [TabLayout.ViewPagerOnTabSelectedListener](https://developer.android.com/reference/android/support/design/widget/TabLayout.ViewPagerOnTabSelectedListener)
  - [TextInputEditText](https://developer.android.com/reference/android/support/design/widget/TextInputEditText)
  - [TextInputLayout](https://developer.android.com/reference/android/support/design/widget/TextInputLayout)