# PreferenceViewHolder

added in[version 24.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact com.android.support:preference-v7:28.0.0-alpha1  
Summary:[Inherited Fields](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#inhfields)\|[Methods](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#)  

# PreferenceViewHolder

| 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


class
PreferenceViewHolder
`  
`


``

extends `[RecyclerView.ViewHolder](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder)`


``


`

|---|---|----------------------------------------------------|
| java.lang.Object                                         |||
| ↳ | [android.support.v7.widget.RecyclerView.ViewHolder](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder) ||
|   | ↳ | android.support.v7.preference.PreferenceViewHolder |

<br />

*** ** * ** ***

A[RecyclerView.ViewHolder](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder)class which caches views associated with the default[Preference](https://developer.android.com/reference/android/support/v7/preference/Preference)layouts. Cached views can be retrieved by calling[findViewById(int)](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#findViewById(int)).

## Summary

|                                                                                                                                                                                                                                                                                                                                                                                 ### Inherited fields                                                                                                                                                                                                                                                                                                                                                                                  |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#)From class` `[android.support.v7.widget.RecyclerView.ViewHolder](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder)` ` |----------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------| | ` public final `[View](https://developer.android.com/reference/android/view/View.html) | [itemView](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#itemView) <br /> | |

|                                                                                                                                                                                   ### Public methods                                                                                                                                                                                    ||
|---------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` `[View](https://developer.android.com/reference/android/view/View.html) | ` `[findViewById](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#findViewById(int))`(int id) ` Returns a cached reference to a subview managed by this object.                                                                                                   |
| ` boolean`                                                                | ` `[isDividerAllowedAbove](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#isDividerAllowedAbove())`() ` Dividers are only drawn between items if both items allow it, or above the first and below the last item if that item allows it.                         |
| ` boolean`                                                                | ` `[isDividerAllowedBelow](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#isDividerAllowedBelow())`() ` Dividers are only drawn between items if both items allow it, or above the first and below the last item if that item allows it.                         |
| ` void`                                                                   | ` `[setDividerAllowedAbove](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#setDividerAllowedAbove(boolean))`(boolean allowed) ` Dividers are only drawn between items if both items allow it, or above the first and below the last item if that item allows it. |
| ` void`                                                                   | ` `[setDividerAllowedBelow](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#setDividerAllowedBelow(boolean))`(boolean allowed) ` Dividers are only drawn between items if both items allow it, or above the first and below the last item if that item allows it. |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#)From class` `[android.support.v7.widget.RecyclerView.ViewHolder](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder)` ` |------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` final int`     | ` `[getAdapterPosition](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#getAdapterPosition())`() ` Returns the Adapter position of the item represented by this ViewHolder.                                                                                                                                                                                                                                                                                                                                                                                       | | ` final long`    | ` `[getItemId](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#getItemId())`() ` Returns The itemId represented by this ViewHolder.                                                                                                                                                                                                                                                                                                                                                                                                                               | | ` final int`     | ` `[getItemViewType](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#getItemViewType())`() `                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | ` final int`     | ` `[getLayoutPosition](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#getLayoutPosition())`() ` Returns the position of the ViewHolder in terms of the latest layout pass.                                                                                                                                                                                                                                                                                                                                                                                       | | ` final int`     | ` `[getOldPosition](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#getOldPosition())`() ` When LayoutManager supports animations, RecyclerView tracks 3 positions for ViewHolders to perform animations.                                                                                                                                                                                                                                                                                                                                                         | | ` final int`     | ` `[getPosition](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#getPosition())`() ` *This method was deprecated in API level 22.1.0. This method is deprecated because its meaning is ambiguous due to the async handling of adapter updates. Please use[getLayoutPosition()](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#getLayoutPosition())or[getAdapterPosition()](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#getAdapterPosition())depending on your use case.* | | ` final boolean` | ` `[isRecyclable](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#isRecyclable())`() `                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | ` final void`    | ` `[setIsRecyclable](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#setIsRecyclable(boolean))`(boolean recyclable) ` Informs the recycler whether this item can be recycled.                                                                                                                                                                                                                                                                                                                                                                                     | | ` String`        | ` `[toString](https://developer.android.com/reference/android/support/v7/widget/RecyclerView.ViewHolder#toString())`() `                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | ||
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder#)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 methods

### findViewById

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

```
View findViewById (int id)
```

Returns a cached reference to a subview managed by this object. If the view reference is not yet cached, it falls back to calling[findViewById(int)](https://developer.android.com/reference/android/view/View.html#findViewById(int))and caches the result.

<br />

|                     Parameters                      ||
|------|-----------------------------------------------|
| `id` | `int`: Resource ID of the view to find <br /> |

|                                                                   Returns                                                                   ||
|------------------------------------------------------------------------|---------------------------------------------------------------------|
| [View](https://developer.android.com/reference/android/view/View.html) | The view, or null if no view with the requested ID is found. <br /> |

### isDividerAllowedAbove

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

```
boolean isDividerAllowedAbove ()
```

Dividers are only drawn between items if both items allow it, or above the first and below the last item if that item allows it.

<br />

|                            Returns                             ||
|-----------|-----------------------------------------------------|
| `boolean` | true if dividers are allowed above this item <br /> |

### isDividerAllowedBelow

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

```
boolean isDividerAllowedBelow ()
```

Dividers are only drawn between items if both items allow it, or above the first and below the last item if that item allows it.

<br />

|                            Returns                             ||
|-----------|-----------------------------------------------------|
| `boolean` | true if dividers are allowed below this item <br /> |

### setDividerAllowedAbove

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

```
void setDividerAllowedAbove (boolean allowed)
```

Dividers are only drawn between items if both items allow it, or above the first and below the last item if that item allows it. By default,[onBindViewHolder(PreferenceViewHolder)](https://developer.android.com/reference/android/support/v7/preference/Preference#onBindViewHolder(android.support.v7.preference.PreferenceViewHolder))will set this to the same value as returned by[isSelectable()](https://developer.android.com/reference/android/support/v7/preference/Preference#isSelectable()), so that non-selectable items do not have a divider drawn above them.

<br />

|                                     Parameters                                     ||
|-----------|-------------------------------------------------------------------------|
| `allowed` | `boolean`: false to prevent dividers being drawn above this item <br /> |

### setDividerAllowedBelow

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

```
void setDividerAllowedBelow (boolean allowed)
```

Dividers are only drawn between items if both items allow it, or above the first and below the last item if that item allows it. By default,[onBindViewHolder(PreferenceViewHolder)](https://developer.android.com/reference/android/support/v7/preference/Preference#onBindViewHolder(android.support.v7.preference.PreferenceViewHolder))will set this to the same value as returned by[isSelectable()](https://developer.android.com/reference/android/support/v7/preference/Preference#isSelectable()), so that non-selectable items do not have a divider drawn below them.

<br />

|                                     Parameters                                     ||
|-----------|-------------------------------------------------------------------------|
| `allowed` | `boolean`: false to prevent dividers being drawn below this item <br /> |

-

  ## Interfaces

  - [DialogPreference.TargetFragment](https://developer.android.com/reference/android/support/v7/preference/DialogPreference.TargetFragment)
  - [Preference.OnPreferenceChangeListener](https://developer.android.com/reference/android/support/v7/preference/Preference.OnPreferenceChangeListener)
  - [Preference.OnPreferenceClickListener](https://developer.android.com/reference/android/support/v7/preference/Preference.OnPreferenceClickListener)
  - [PreferenceFragmentCompat.OnPreferenceDisplayDialogCallback](https://developer.android.com/reference/android/support/v7/preference/PreferenceFragmentCompat.OnPreferenceDisplayDialogCallback)
  - [PreferenceFragmentCompat.OnPreferenceStartFragmentCallback](https://developer.android.com/reference/android/support/v7/preference/PreferenceFragmentCompat.OnPreferenceStartFragmentCallback)
  - [PreferenceFragmentCompat.OnPreferenceStartScreenCallback](https://developer.android.com/reference/android/support/v7/preference/PreferenceFragmentCompat.OnPreferenceStartScreenCallback)
  - [PreferenceGroup.PreferencePositionCallback](https://developer.android.com/reference/android/support/v7/preference/PreferenceGroup.PreferencePositionCallback)
  - [PreferenceManager.OnDisplayPreferenceDialogListener](https://developer.android.com/reference/android/support/v7/preference/PreferenceManager.OnDisplayPreferenceDialogListener)
  - [PreferenceManager.OnNavigateToScreenListener](https://developer.android.com/reference/android/support/v7/preference/PreferenceManager.OnNavigateToScreenListener)
  - [PreferenceManager.OnPreferenceTreeClickListener](https://developer.android.com/reference/android/support/v7/preference/PreferenceManager.OnPreferenceTreeClickListener)
-

  ## Classes

  - [CheckBoxPreference](https://developer.android.com/reference/android/support/v7/preference/CheckBoxPreference)
  - [DialogPreference](https://developer.android.com/reference/android/support/v7/preference/DialogPreference)
  - [DropDownPreference](https://developer.android.com/reference/android/support/v7/preference/DropDownPreference)
  - [EditTextPreference](https://developer.android.com/reference/android/support/v7/preference/EditTextPreference)
  - [EditTextPreferenceDialogFragmentCompat](https://developer.android.com/reference/android/support/v7/preference/EditTextPreferenceDialogFragmentCompat)
  - [ListPreference](https://developer.android.com/reference/android/support/v7/preference/ListPreference)
  - [ListPreferenceDialogFragmentCompat](https://developer.android.com/reference/android/support/v7/preference/ListPreferenceDialogFragmentCompat)
  - [MultiSelectListPreferenceDialogFragmentCompat](https://developer.android.com/reference/android/support/v7/preference/MultiSelectListPreferenceDialogFragmentCompat)
  - [Preference](https://developer.android.com/reference/android/support/v7/preference/Preference)
  - [Preference.BaseSavedState](https://developer.android.com/reference/android/support/v7/preference/Preference.BaseSavedState)
  - [PreferenceCategory](https://developer.android.com/reference/android/support/v7/preference/PreferenceCategory)
  - [PreferenceDataStore](https://developer.android.com/reference/android/support/v7/preference/PreferenceDataStore)
  - [PreferenceDialogFragmentCompat](https://developer.android.com/reference/android/support/v7/preference/PreferenceDialogFragmentCompat)
  - [PreferenceFragmentCompat](https://developer.android.com/reference/android/support/v7/preference/PreferenceFragmentCompat)
  - [PreferenceGroup](https://developer.android.com/reference/android/support/v7/preference/PreferenceGroup)
  - [PreferenceManager](https://developer.android.com/reference/android/support/v7/preference/PreferenceManager)
  - [PreferenceManager.PreferenceComparisonCallback](https://developer.android.com/reference/android/support/v7/preference/PreferenceManager.PreferenceComparisonCallback)
  - [PreferenceManager.SimplePreferenceComparisonCallback](https://developer.android.com/reference/android/support/v7/preference/PreferenceManager.SimplePreferenceComparisonCallback)
  - [PreferenceScreen](https://developer.android.com/reference/android/support/v7/preference/PreferenceScreen)
  - [PreferenceViewHolder](https://developer.android.com/reference/android/support/v7/preference/PreferenceViewHolder)
  - [R](https://developer.android.com/reference/android/support/v7/preference/R)
  - [R.anim](https://developer.android.com/reference/android/support/v7/preference/R.anim)
  - [R.attr](https://developer.android.com/reference/android/support/v7/preference/R.attr)
  - [R.bool](https://developer.android.com/reference/android/support/v7/preference/R.bool)
  - [R.color](https://developer.android.com/reference/android/support/v7/preference/R.color)
  - [R.dimen](https://developer.android.com/reference/android/support/v7/preference/R.dimen)
  - [R.drawable](https://developer.android.com/reference/android/support/v7/preference/R.drawable)
  - [R.id](https://developer.android.com/reference/android/support/v7/preference/R.id)
  - [R.integer](https://developer.android.com/reference/android/support/v7/preference/R.integer)
  - [R.layout](https://developer.android.com/reference/android/support/v7/preference/R.layout)
  - [R.string](https://developer.android.com/reference/android/support/v7/preference/R.string)
  - [R.style](https://developer.android.com/reference/android/support/v7/preference/R.style)
  - [R.styleable](https://developer.android.com/reference/android/support/v7/preference/R.styleable)
  - [SeekBarPreference](https://developer.android.com/reference/android/support/v7/preference/SeekBarPreference)
  - [SwitchPreferenceCompat](https://developer.android.com/reference/android/support/v7/preference/SwitchPreferenceCompat)
  - [TwoStatePreference](https://developer.android.com/reference/android/support/v7/preference/TwoStatePreference)