# SwitchPreference

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  
Deprecated in [API level 29](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)

# SwitchPreference

*** ** * ** ***

Kotlin \|[Java](https://developer.android.com/reference/android/preference/SwitchPreference "View this page in Java")  

```
open class SwitchPreference : TwoStatePreference
```

|---|---|---|----------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                                   ||||
| ↳ | [android.preference.Preference](https://developer.android.com/reference/kotlin/android/preference/Preference)                    |||
|   | ↳ | [android.preference.TwoStatePreference](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference) ||
|   |   | ↳ | [android.preference.SwitchPreference](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#) |

*** ** * ** ***

| **This class was deprecated in API level 29.**
|
| Use the [AndroidX](https://developer.android.com/jetpack/androidx.html) [Preference Library](https://developer.android.com/reference/androidx/preference/package-summary.html) for consistent behavior across all devices. For more information on using the AndroidX Preference Library see [Settings](https://developer.android.com/guide/topics/ui/settings.html).

A [Preference](https://developer.android.com/reference/kotlin/android/preference/Preference) that provides a two-state toggleable option.

This preference will store a boolean into the SharedPreferences.

## Summary

|                                                                                                                   XML attributes                                                                                                                    ||
|----------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------|
| [`android:disableDependentsState`](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#attr_SwitchPreference) | The state (true for on, or false for off) that causes dependents to be disabled.                      |
| [`android:summaryOff`](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#attr_SwitchPreference)             | The summary for the Preference in a PreferenceActivity screen when the SwitchPreference is unchecked. |
| [`android:summaryOn`](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#attr_SwitchPreference)              | The summary for the Preference in a PreferenceActivity screen when the SwitchPreference is checked.   |
| [`android:switchTextOff`](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#attr_SwitchPreference)          | The text used on the switch itself when in the "off" state.                                           |
| [`android:switchTextOn`](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#attr_SwitchPreference)           | The text used on the switch itself when in the "on" state.                                            |

| Inherited XML attributes ||
|---|---|
| From class [Preference](https://developer.android.com/reference/kotlin/android/preference/Preference) |---------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [android:defaultValue](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)      | The default value for the preference, which will be set either if persistence is off or persistence is on and the preference is not found in the persistent storage. May be a reference to another resource, in the form "`@[+][`*package* `:]`*type* `/`*name*" or a theme attribute in the form "`?[`*package* `:]`*type* `/`*name*". May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character; May be an integer value, such as "`100`". May be a boolean value, such as "`true`" or "`false`". May be a floating point value, such as "`1.2`". <br /> | | [android:dependency](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)        | The key of another Preference that this Preference will depend on. If the other Preference is not set or is off, this Preference will be disabled. May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character; <br />                                                                                                                                                                                                                                                                                                                                       | | [android:enabled](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)           | Whether the Preference is enabled. May be a boolean value, such as "`true`" or "`false`". <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [android:fragment](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)          | When used inside of a modern PreferenceActivity, this declares a new PreferenceFragment to be shown when the user selects this item. May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character; <br />                                                                                                                                                                                                                                                                                                                                                     | | [android:icon](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)              | The optional icon for the preference. May be a reference to another resource, in the form "`@[+][`*package* `:]`*type* `/`*name*" or a theme attribute in the form "`?[`*package* `:]`*type* `/`*name*". <br />                                                                                                                                                                                                                                                                                                                                                                                                   | | [android:iconSpaceReserved](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference) | Whether the space for the preference icon view will be reserved. By default, preference icon view visibility will be set to GONE when there is no icon provided, so the default value of this attribute is false. May be a boolean value, such as "`true`" or "`false`". <br />                                                                                                                                                                                                                                                                                                                                   | | [android:key](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)               | The key to store the Preference value. May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character; <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                   | | [android:layout](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)            | The layout for the Preference in a PreferenceActivity screen. This should rarely need to be changed, look at widgetLayout instead. May be a reference to another resource, in the form "`@[+][`*package* `:]`*type* `/`*name*" or a theme attribute in the form "`?[`*package* `:]`*type* `/`*name*". <br />                                                                                                                                                                                                                                                                                                      | | [android:order](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)             | The order for the Preference (lower values are to be ordered first). If this is not specified, the default ordering will be alphabetic. May be an integer value, such as "`100`". <br />                                                                                                                                                                                                                                                                                                                                                                                                                          | | [android:persistent](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)        | Whether the Preference stores its value to the storage. May be a boolean value, such as "`true`" or "`false`". <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | [android:recycleEnabled](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)    | Whether the preference has enabled to have its view recycled when used in the list view. This is true by default. May be a boolean value, such as "`true`" or "`false`". <br />                                                                                                                                                                                                                                                                                                                                                                                                                                   | | [android:selectable](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)        | Whether the Preference is selectable. May be a boolean value, such as "`true`" or "`false`". <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | [android:shouldDisableView](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference) | Whether the view of this Preference should be disabled when this Preference is disabled. May be a boolean value, such as "`true`" or "`false`". <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [android:singleLineTitle](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)   | Whether to use single line for the preference title text. By default, preference title will be constrained to one line, so the default value of this attribute is true. May be a boolean value, such as "`true`" or "`false`". <br />                                                                                                                                                                                                                                                                                                                                                                             | | [android:summary](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)           | The summary for the Preference. In API 25 and earlier, this value is read as a plain string with styling information stripped. May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character; <br />                                                                                                                                                                                                                                                                                                                                                           | | [android:title](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)             | The title for the Preference. In API 25 and earlier, this value is read as a plain string with styling information stripped. May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character; <br />                                                                                                                                                                                                                                                                                                                                                             | | [android:widgetLayout](https://developer.android.com/reference/kotlin/android/preference/Preference#attr_Preference)      | The layout for the controllable widget portion of a Preference. This is inflated into the layout for a Preference and should be used more frequently than the layout attribute. For example, a checkbox preference would specify a custom layout (consisting of just the CheckBox) here. May be a reference to another resource, in the form "`@[+][`*package* `:]`*type* `/`*name*" or a theme attribute in the form "`?[`*package* `:]`*type* `/`*name*". <br />                                                                                                                                                | ||

| Inherited constants ||
|---|---|
| From class [Preference](https://developer.android.com/reference/kotlin/android/preference/Preference) |----------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) | [DEFAULT_ORDER](https://developer.android.com/reference/kotlin/android/preference/Preference#DEFAULT_ORDER:kotlin.Int) Specify for [setOrder(int)](https://developer.android.com/reference/kotlin/android/preference/Preference#setOrder(kotlin.Int)) if a specific order is not required. <br /> | ||

|                                                                                                                                                                                                                                                                                                                                     Public constructors                                                                                                                                                                                                                                                                                                                                     ||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| [SwitchPreference](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#SwitchPreference(android.content.Context))`(`context:` `[Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!`)` Construct a new SwitchPreference with default style options.                                                                                                                                                                                                                                                                                                                                                                   |
| [SwitchPreference](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#SwitchPreference(android.content.Context,%20android.util.AttributeSet))`(`context:` `[Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!`, `attrs:` `[AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html#)!`)` Construct a new SwitchPreference with the given style options.                                                                                                                                                                                                                        |
| [SwitchPreference](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#SwitchPreference(android.content.Context,%20android.util.AttributeSet,%20kotlin.Int))`(`context:` `[Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!`, `attrs:` `[AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html#)!`, `defStyleAttr:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Construct a new SwitchPreference with the given style options.                                                                                                            |
| [SwitchPreference](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#SwitchPreference(android.content.Context,%20android.util.AttributeSet,%20kotlin.Int,%20kotlin.Int))`(`context:` `[Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!`, `attrs:` `[AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html#)!`, `defStyleAttr:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`, `defStyleRes:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Construct a new SwitchPreference with the given style options. |

|                                                                                                                                                                                                         Public methods                                                                                                                                                                                                         ||
|-----------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| open [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)! | [getSwitchTextOff](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#getSwitchTextOff())`()` <br />                                                                                                                                                                                      |
| open [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)! | [getSwitchTextOn](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#getSwitchTextOn())`()` <br />                                                                                                                                                                                        |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setSwitchTextOff](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#setSwitchTextOff(kotlin.Int))`(`resId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Set the text displayed on the switch widget in the off state.                                |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setSwitchTextOff](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#setSwitchTextOff(kotlin.CharSequence))`(`offText:` `[CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!`)` Set the text displayed on the switch widget in the off state. |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setSwitchTextOn](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#setSwitchTextOn(kotlin.Int))`(`resId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Set the text displayed on the switch widget in the on state.                                   |
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setSwitchTextOn](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#setSwitchTextOn(kotlin.CharSequence))`(`onText:` `[CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!`)` Set the text displayed on the switch widget in the on state.     |

|                                                                                                                                                   Protected methods                                                                                                                                                   ||
|-----------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| open [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onBindView](https://developer.android.com/reference/kotlin/android/preference/SwitchPreference#onBindView(android.view.View))`(`view:` `[View](https://developer.android.com/reference/kotlin/android/view/View.html#)!`)` <br /> |

| Inherited functions ||
|---|---|
| From class [Preference](https://developer.android.com/reference/kotlin/android/preference/Preference) |-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [callChangeListener](https://developer.android.com/reference/kotlin/android/preference/Preference#callChangeListener(kotlin.Any))`(`newValue:` `[Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)!`)` Call this method after the user changes the preference, but before the internal state is set. This allows the client to ignore the user value. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)                                                                                                                | [compareTo](https://developer.android.com/reference/kotlin/android/preference/Preference#compareTo(android.preference.Preference))`(`other:` `[Preference](https://developer.android.com/reference/kotlin/android/preference/Preference)!`)` Compares Preference objects based on order (if set), otherwise alphabetically on the titles. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [Preference](https://developer.android.com/reference/kotlin/android/preference/Preference)!                                                                                               | [findPreferenceInHierarchy](https://developer.android.com/reference/kotlin/android/preference/Preference#findPreferenceInHierarchy(kotlin.String))`(`key:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` Finds a Preference in this hierarchy (the whole thing, even above/below your [PreferenceScreen](https://developer.android.com/reference/kotlin/android/preference/PreferenceScreen) screen break) with the given key. This only functions after we have been attached to a hierarchy. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | [Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!                                                                                                  | [getContext](https://developer.android.com/reference/kotlin/android/preference/Preference#getContext())`()` Returns the [android.content.Context](https://developer.android.com/reference/kotlin/android/content/Context.html#) of this Preference. Each Preference in a Preference hierarchy can be from different Context (for example, if multiple activities provide preferences into a single [PreferenceActivity](https://developer.android.com/reference/kotlin/android/preference/PreferenceActivity)). This Context will be used to save the Preference values. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!                                                                                                         | [getDependency](https://developer.android.com/reference/kotlin/android/preference/Preference#getDependency())`()` Returns the key of the dependency on this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | [SharedPreferences.Editor](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.Editor.html#)!                                                                | [getEditor](https://developer.android.com/reference/kotlin/android/preference/Preference#getEditor())`()` Returns an [SharedPreferences.Editor](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.Editor.html#) where this Preference can save its value(s). Usually it's easier to use one of the helper save methods: [persistBoolean(boolean)](https://developer.android.com/reference/kotlin/android/preference/Preference#persistBoolean(kotlin.Boolean)), [persistFloat(float)](https://developer.android.com/reference/kotlin/android/preference/Preference#persistFloat(kotlin.Float)), [persistInt(int)](https://developer.android.com/reference/kotlin/android/preference/Preference#persistInt(kotlin.Int)), [persistLong(long)](https://developer.android.com/reference/kotlin/android/preference/Preference#persistLong(kotlin.Long)), [persistString(java.lang.String)](https://developer.android.com/reference/kotlin/android/preference/Preference#persistString(kotlin.String)). To read values, see [getSharedPreferences()](https://developer.android.com/reference/kotlin/android/preference/Preference#getSharedPreferences()). If [shouldCommit()](https://developer.android.com/reference/kotlin/android/preference/Preference#shouldCommit()) returns true, it is this Preference's responsibility to commit. In some cases, writes to this will not be committed right away and hence not show up in the SharedPreferences, this is intended behavior to improve performance. <br />                                                                | | [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html#)!                                                                                                         | [getExtras](https://developer.android.com/reference/kotlin/android/preference/Preference#getExtras())`()` Return the extras Bundle object associated with this preference, creating a new Bundle if there currently isn't one. You can use this to get and set individual extra key/value pairs. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!                                                                                                         | [getFragment](https://developer.android.com/reference/kotlin/android/preference/Preference#getFragment())`()` Return the fragment class name associated with this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | | [Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html#)!                                                                                      | [getIcon](https://developer.android.com/reference/kotlin/android/preference/Preference#getIcon())`()` Returns the icon of this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | | [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html#)!                                                                                                    | [getIntent](https://developer.android.com/reference/kotlin/android/preference/Preference#getIntent())`()` Return the [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html#) associated with this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!                                                                                                         | [getKey](https://developer.android.com/reference/kotlin/android/preference/Preference#getKey())`()` Gets the key for this Preference, which is also the key used for storing values into [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#) or [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore). <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)                                                                                                                | [getLayoutResource](https://developer.android.com/reference/kotlin/android/preference/Preference#getLayoutResource())`()` Gets the layout resource that will be shown as the [View](https://developer.android.com/reference/kotlin/android/view/View.html#) for this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | [Preference.OnPreferenceChangeListener](https://developer.android.com/reference/kotlin/android/preference/Preference.OnPreferenceChangeListener)!                                         | [getOnPreferenceChangeListener](https://developer.android.com/reference/kotlin/android/preference/Preference#getOnPreferenceChangeListener())`()` Returns the callback to be invoked when this Preference is changed by the user (but before the internal state has been updated). <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | | [Preference.OnPreferenceClickListener](https://developer.android.com/reference/kotlin/android/preference/Preference.OnPreferenceClickListener)!                                           | [getOnPreferenceClickListener](https://developer.android.com/reference/kotlin/android/preference/Preference#getOnPreferenceClickListener())`()` Returns the callback to be invoked when this Preference is clicked. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)                                                                                                                | [getOrder](https://developer.android.com/reference/kotlin/android/preference/Preference#getOrder())`()` Gets the order of this Preference with respect to other Preference objects on the same level. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [PreferenceGroup](https://developer.android.com/reference/kotlin/android/preference/PreferenceGroup)?                                                                                     | [getParent](https://developer.android.com/reference/kotlin/android/preference/Preference#getParent())`()` Returns the [PreferenceGroup](https://developer.android.com/reference/kotlin/android/preference/PreferenceGroup) which is this Preference assigned to or `null` if this preference is not assigned to any group or is a root Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [getPersistedBoolean](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedBoolean(kotlin.Boolean))`(`defaultReturnValue:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Attempts to get a persisted boolean if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float/index.html)                                                                                                            | [getPersistedFloat](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedFloat(kotlin.Float))`(`defaultReturnValue:` `[Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float/index.html)`)` Attempts to get a persisted float if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)                                                                                                                | [getPersistedInt](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedInt(kotlin.Int))`(`defaultReturnValue:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Attempts to get a persisted int if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)                                                                                                              | [getPersistedLong](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedLong(kotlin.Long))`(`defaultReturnValue:` `[Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`)` Attempts to get a persisted long if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!                                                                                                         | [getPersistedString](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedString(kotlin.String))`(`defaultReturnValue:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` Attempts to get a persisted String if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | [MutableSet](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!>! | [getPersistedStringSet](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedStringSet(kotlin.collections.MutableSet))`(`defaultReturnValue:` `[MutableSet](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!>!`)` Attempts to get a persisted set of Strings if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | | [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore)?                                                                             | [getPreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/Preference#getPreferenceDataStore())`()` Returns [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore) used by this Preference. Returns `null` if [android.content.SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#) is used instead. By default preferences always use [android.content.SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#). To make this preference to use the [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore) you need to assign your implementation to the Preference itself via [setPreferenceDataStore(android.preference.PreferenceDataStore)](https://developer.android.com/reference/kotlin/android/preference/Preference#setPreferenceDataStore(android.preference.PreferenceDataStore)) or to its [PreferenceManager](https://developer.android.com/reference/kotlin/android/preference/PreferenceManager) via [PreferenceManager.setPreferenceDataStore(PreferenceDataStore)](https://developer.android.com/reference/kotlin/android/preference/PreferenceManager#setPreferenceDataStore(android.preference.PreferenceDataStore)). <br />                                                                                                                                                                                                        | | [PreferenceManager](https://developer.android.com/reference/kotlin/android/preference/PreferenceManager)!                                                                                 | [getPreferenceManager](https://developer.android.com/reference/kotlin/android/preference/Preference#getPreferenceManager())`()` Gets the [PreferenceManager](https://developer.android.com/reference/kotlin/android/preference/PreferenceManager) that manages this Preference object's tree. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | | [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#)!                                                                              | [getSharedPreferences](https://developer.android.com/reference/kotlin/android/preference/Preference#getSharedPreferences())`()` Returns the [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#) where this Preference can read its value(s). Usually, it's easier to use one of the helper read methods: [getPersistedBoolean(boolean)](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedBoolean(kotlin.Boolean)), [getPersistedFloat(float)](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedFloat(kotlin.Float)), [getPersistedInt(int)](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedInt(kotlin.Int)), [getPersistedLong(long)](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedLong(kotlin.Long)), [getPersistedString(java.lang.String)](https://developer.android.com/reference/kotlin/android/preference/Preference#getPersistedString(kotlin.String)). To save values, see [getEditor()](https://developer.android.com/reference/kotlin/android/preference/Preference#getEditor()). In some cases, writes to the [getEditor()](https://developer.android.com/reference/kotlin/android/preference/Preference#getEditor()) will not be committed right away and hence not show up in the returned [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#), this is intended behavior to improve performance. <br /> | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [getShouldDisableView](https://developer.android.com/reference/kotlin/android/preference/Preference#getShouldDisableView())`()` Checks whether this Preference should disable its view when it's action is disabled. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | | [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!                                                                                            | [getSummary](https://developer.android.com/reference/kotlin/android/preference/Preference#getSummary())`()` Returns the summary of this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!                                                                                            | [getTitle](https://developer.android.com/reference/kotlin/android/preference/Preference#getTitle())`()` Returns the title of this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)                                                                                                                | [getTitleRes](https://developer.android.com/reference/kotlin/android/preference/Preference#getTitleRes())`()` Returns the title resource ID of this Preference. If the title did not come from a resource, `0` is returned. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | [View](https://developer.android.com/reference/kotlin/android/view/View.html#)!                                                                                                           | [getView](https://developer.android.com/reference/kotlin/android/preference/Preference#getView(android.view.View,%20android.view.ViewGroup))`(`convertView:` `[View](https://developer.android.com/reference/kotlin/android/view/View.html#)!`, `parent:` `[ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html#)!`)` Gets the View that will be shown in the [PreferenceActivity](https://developer.android.com/reference/kotlin/android/preference/PreferenceActivity). <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)                                                                                                                | [getWidgetLayoutResource](https://developer.android.com/reference/kotlin/android/preference/Preference#getWidgetLayoutResource())`()` Gets the layout resource for the controllable widget portion of this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [hasKey](https://developer.android.com/reference/kotlin/android/preference/Preference#hasKey())`()` Checks whether this Preference has a valid key. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [isEnabled](https://developer.android.com/reference/kotlin/android/preference/Preference#isEnabled())`()` Checks whether this Preference should be enabled in the list. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [isIconSpaceReserved](https://developer.android.com/reference/kotlin/android/preference/Preference#isIconSpaceReserved())`()` Gets whether the space this preference icon view is reserved. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [isPersistent](https://developer.android.com/reference/kotlin/android/preference/Preference#isPersistent())`()` Checks whether this Preference is persistent. If it is, it stores its value(s) into the persistent [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#) storage by default or into [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore) if assigned. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [isRecycleEnabled](https://developer.android.com/reference/kotlin/android/preference/Preference#isRecycleEnabled())`()` Checks whether this Preference has enabled to have its view recycled when used in the list view. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [isSelectable](https://developer.android.com/reference/kotlin/android/preference/Preference#isSelectable())`()` Checks whether this Preference should be selectable in the list. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [isSingleLineTitle](https://developer.android.com/reference/kotlin/android/preference/Preference#isSingleLineTitle())`()` Gets whether the title of this preference is constrained to a single line. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [notifyChanged](https://developer.android.com/reference/kotlin/android/preference/Preference#notifyChanged())`()` Should be called when the data of this [Preference](https://developer.android.com/reference/kotlin/android/preference/Preference) has changed. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [notifyDependencyChange](https://developer.android.com/reference/kotlin/android/preference/Preference#notifyDependencyChange(kotlin.Boolean))`(`disableDependents:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Notifies any listening dependents of a change that affects the dependency. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [notifyHierarchyChanged](https://developer.android.com/reference/kotlin/android/preference/Preference#notifyHierarchyChanged())`()` Should be called when a Preference has been added/removed from this group, or the ordering should be re-evaluated. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [onAttachedToActivity](https://developer.android.com/reference/kotlin/android/preference/Preference#onAttachedToActivity())`()` Called when the Preference hierarchy has been attached to the [PreferenceActivity](https://developer.android.com/reference/kotlin/android/preference/PreferenceActivity). This can also be called when this Preference has been attached to a group that was already attached to the [PreferenceActivity](https://developer.android.com/reference/kotlin/android/preference/PreferenceActivity). <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [onAttachedToHierarchy](https://developer.android.com/reference/kotlin/android/preference/Preference#onAttachedToHierarchy(android.preference.PreferenceManager))`(`preferenceManager:` `[PreferenceManager](https://developer.android.com/reference/kotlin/android/preference/PreferenceManager)!`)` Called when this Preference has been attached to a Preference hierarchy. Make sure to call the super implementation. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [onBindView](https://developer.android.com/reference/kotlin/android/preference/Preference#onBindView(android.view.View))`(`view:` `[View](https://developer.android.com/reference/kotlin/android/view/View.html#)!`)` Binds the created View to the data for this Preference. This is a good place to grab references to custom Views in the layout and set properties on them. Make sure to call through to the superclass's implementation. If you override this method you *must* call through to the superclass implementation. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [View](https://developer.android.com/reference/kotlin/android/view/View.html#)!                                                                                                           | [onCreateView](https://developer.android.com/reference/kotlin/android/preference/Preference#onCreateView(android.view.ViewGroup))`(`parent:` `[ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html#)!`)` Creates the View to be shown for this Preference in the [PreferenceActivity](https://developer.android.com/reference/kotlin/android/preference/PreferenceActivity). The default behavior is to inflate the main layout of this Preference (see [setLayoutResource(int)](https://developer.android.com/reference/kotlin/android/preference/Preference#setLayoutResource(kotlin.Int)). If changing this behavior, please specify a [ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html#) with ID [android.R.id#widget_frame](https://developer.android.com/reference/kotlin/android/R.id.html#widget_frame:kotlin.Int). Make sure to call through to the superclass's implementation. If you override this method you *must* call through to the superclass implementation. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [onDependencyChanged](https://developer.android.com/reference/kotlin/android/preference/Preference#onDependencyChanged(android.preference.Preference,%20kotlin.Boolean))`(`dependency:` `[Preference](https://developer.android.com/reference/kotlin/android/preference/Preference)!`, `disableDependent:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Called when the dependency changes. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [onParentChanged](https://developer.android.com/reference/kotlin/android/preference/Preference#onParentChanged(android.preference.Preference,%20kotlin.Boolean))`(`parent:` `[Preference](https://developer.android.com/reference/kotlin/android/preference/Preference)!`, `disableChild:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Called when the implicit parent dependency changes. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [onPrepareForRemoval](https://developer.android.com/reference/kotlin/android/preference/Preference#onPrepareForRemoval())`()` Called when this Preference is being removed from the hierarchy. You should remove any references to this Preference that you know about. Make sure to call through to the superclass implementation. If you override this method you *must* call through to the superclass implementation. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html#)!                                                                                                         | [peekExtras](https://developer.android.com/reference/kotlin/android/preference/Preference#peekExtras())`()` Return the extras Bundle object associated with this preference, returning `null` if there is not currently one. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [persistBoolean](https://developer.android.com/reference/kotlin/android/preference/Preference#persistBoolean(kotlin.Boolean))`(`value:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Attempts to persist a boolean if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [persistFloat](https://developer.android.com/reference/kotlin/android/preference/Preference#persistFloat(kotlin.Float))`(`value:` `[Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-float/index.html)`)` Attempts to persist a long if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [persistInt](https://developer.android.com/reference/kotlin/android/preference/Preference#persistInt(kotlin.Int))`(`value:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Attempts to persist an int if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [persistLong](https://developer.android.com/reference/kotlin/android/preference/Preference#persistLong(kotlin.Long))`(`value:` `[Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`)` Attempts to persist a long if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [persistString](https://developer.android.com/reference/kotlin/android/preference/Preference#persistString(kotlin.String))`(`value:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` Attempts to persist a String if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [persistStringSet](https://developer.android.com/reference/kotlin/android/preference/Preference#persistStringSet(kotlin.collections.MutableSet))`(`values:` `[MutableSet](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!>!`)` Attempts to persist a set of Strings if this Preference is persistent. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [restoreHierarchyState](https://developer.android.com/reference/kotlin/android/preference/Preference#restoreHierarchyState(android.os.Bundle))`(`container:` `[Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html#)!`)` Restore this Preference hierarchy's previously saved state from the given container. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [saveHierarchyState](https://developer.android.com/reference/kotlin/android/preference/Preference#saveHierarchyState(android.os.Bundle))`(`container:` `[Bundle](https://developer.android.com/reference/kotlin/android/os/Bundle.html#)!`)` Store this Preference hierarchy's frozen state into the given container. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setDefaultValue](https://developer.android.com/reference/kotlin/android/preference/Preference#setDefaultValue(kotlin.Any))`(`defaultValue:` `[Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)!`)` Sets the default value for this Preference, which will be set either if persistence is off or persistence is on and the preference is not found in the persistent storage. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setDependency](https://developer.android.com/reference/kotlin/android/preference/Preference#setDependency(kotlin.String))`(`dependencyKey:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` Sets the key of a Preference that this Preference will depend on. If that Preference is not set or is off, this Preference will be disabled. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setEnabled](https://developer.android.com/reference/kotlin/android/preference/Preference#setEnabled(kotlin.Boolean))`(`enabled:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets whether this Preference is enabled. If disabled, it will not handle clicks. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setFragment](https://developer.android.com/reference/kotlin/android/preference/Preference#setFragment(kotlin.String))`(`fragment:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` Sets the class name of a fragment to be shown when this Preference is clicked. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setIcon](https://developer.android.com/reference/kotlin/android/preference/Preference#setIcon(android.graphics.drawable.Drawable))`(`icon:` `[Drawable](https://developer.android.com/reference/kotlin/android/graphics/drawable/Drawable.html#)!`)` Sets the icon for this Preference with a Drawable. This icon will be placed into the ID [android.R.id#icon](https://developer.android.com/reference/kotlin/android/R.id.html#icon:kotlin.Int) within the View created by [onCreateView(android.view.ViewGroup)](https://developer.android.com/reference/kotlin/android/preference/Preference#onCreateView(android.view.ViewGroup)). <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setIcon](https://developer.android.com/reference/kotlin/android/preference/Preference#setIcon(kotlin.Int))`(`iconResId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Sets the icon for this Preference with a resource ID. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setIconSpaceReserved](https://developer.android.com/reference/kotlin/android/preference/Preference#setIconSpaceReserved(kotlin.Boolean))`(`iconSpaceReserved:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets whether to reserve the space of this Preference icon view when no icon is provided. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setIntent](https://developer.android.com/reference/kotlin/android/preference/Preference#setIntent(android.content.Intent))`(`intent:` `[Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html#)!`)` Sets an [Intent](https://developer.android.com/reference/kotlin/android/content/Intent.html#) to be used for [Context.startActivity(Intent)](https://developer.android.com/reference/kotlin/android/content/Context.html#startActivity(android.content.Intent)) when this Preference is clicked. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setKey](https://developer.android.com/reference/kotlin/android/preference/Preference#setKey(kotlin.String))`(`key:` `[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)!`)` Sets the key for this Preference, which is used as a key to the [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#) or [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore). This should be unique for the package. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setLayoutResource](https://developer.android.com/reference/kotlin/android/preference/Preference#setLayoutResource(kotlin.Int))`(`layoutResId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Sets the layout resource that is inflated as the [View](https://developer.android.com/reference/kotlin/android/view/View.html#) to be shown for this Preference. In most cases, the default layout is sufficient for custom Preference objects and only the widget layout needs to be changed. This layout should contain a [ViewGroup](https://developer.android.com/reference/kotlin/android/view/ViewGroup.html#) with ID [android.R.id#widget_frame](https://developer.android.com/reference/kotlin/android/R.id.html#widget_frame:kotlin.Int) to be the parent of the specific widget for this Preference. It should similarly contain [android.R.id#title](https://developer.android.com/reference/kotlin/android/R.id.html#title:kotlin.Int) and [android.R.id#summary](https://developer.android.com/reference/kotlin/android/R.id.html#summary:kotlin.Int). <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setOnPreferenceChangeListener](https://developer.android.com/reference/kotlin/android/preference/Preference#setOnPreferenceChangeListener(android.preference.Preference.OnPreferenceChangeListener))`(`onPreferenceChangeListener:` `[Preference.OnPreferenceChangeListener](https://developer.android.com/reference/kotlin/android/preference/Preference.OnPreferenceChangeListener)!`)` Sets the callback to be invoked when this Preference is changed by the user (but before the internal state has been updated). <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setOnPreferenceClickListener](https://developer.android.com/reference/kotlin/android/preference/Preference#setOnPreferenceClickListener(android.preference.Preference.OnPreferenceClickListener))`(`onPreferenceClickListener:` `[Preference.OnPreferenceClickListener](https://developer.android.com/reference/kotlin/android/preference/Preference.OnPreferenceClickListener)!`)` Sets the callback to be invoked when this Preference is clicked. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setOrder](https://developer.android.com/reference/kotlin/android/preference/Preference#setOrder(kotlin.Int))`(`order:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Sets the order of this Preference with respect to other Preference objects on the same level. If this is not specified, the default behavior is to sort alphabetically. The [PreferenceGroup.setOrderingAsAdded(boolean)](https://developer.android.com/reference/kotlin/android/preference/PreferenceGroup#setOrderingAsAdded(kotlin.Boolean)) can be used to order Preference objects based on the order they appear in the XML. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setPersistent](https://developer.android.com/reference/kotlin/android/preference/Preference#setPersistent(kotlin.Boolean))`(`persistent:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets whether this Preference is persistent. When persistent, it stores its value(s) into the persistent [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#) storage by default or into [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore) if assigned. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setPreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/Preference#setPreferenceDataStore(android.preference.PreferenceDataStore))`(`dataStore:` `[PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore)!`)` Sets a [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore) to be used by this Preference instead of using [android.content.SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#). The data store will remain assigned even if the Preference is moved around the preference hierarchy. It will also override a data store propagated from the [PreferenceManager](https://developer.android.com/reference/kotlin/android/preference/PreferenceManager) that owns this Preference. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setRecycleEnabled](https://developer.android.com/reference/kotlin/android/preference/Preference#setRecycleEnabled(kotlin.Boolean))`(`enabled:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets whether this Preference has enabled to have its view recycled when used in the list view. By default the recycling is enabled. The value can be changed only before this preference is added to the preference hierarchy. If view recycling is not allowed then each time the list view populates this preference the [getView(android.view.View,android.view.ViewGroup)](https://developer.android.com/reference/kotlin/android/preference/Preference#getView(android.view.View,%20android.view.ViewGroup)) method receives a `null` convert view and needs to recreate the view. Otherwise view gets recycled and only [onBindView(android.view.View)](https://developer.android.com/reference/kotlin/android/preference/Preference#onBindView(android.view.View)) gets called. If you override this method you *must* call through to the superclass implementation. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setSelectable](https://developer.android.com/reference/kotlin/android/preference/Preference#setSelectable(kotlin.Boolean))`(`selectable:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets whether this Preference is selectable. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setShouldDisableView](https://developer.android.com/reference/kotlin/android/preference/Preference#setShouldDisableView(kotlin.Boolean))`(`shouldDisableView:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets whether this Preference should disable its view when it gets disabled. For example, set this and [setEnabled(boolean)](https://developer.android.com/reference/kotlin/android/preference/Preference#setEnabled(kotlin.Boolean)) to false for preferences that are only displaying information and 1) should not be clickable 2) should not have the view set to the disabled state. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setSingleLineTitle](https://developer.android.com/reference/kotlin/android/preference/Preference#setSingleLineTitle(kotlin.Boolean))`(`singleLineTitle:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets whether to constrain the title of this Preference to a single line instead of letting it wrap onto multiple lines. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setSummary](https://developer.android.com/reference/kotlin/android/preference/Preference#setSummary(kotlin.Int))`(`summaryResId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Sets the summary for this Preference with a resource ID. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setSummary](https://developer.android.com/reference/kotlin/android/preference/Preference#setSummary(kotlin.CharSequence))`(`summary:` `[CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!`)` Sets the summary for this Preference with a CharSequence. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setTitle](https://developer.android.com/reference/kotlin/android/preference/Preference#setTitle(kotlin.Int))`(`titleResId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Sets the title for this Preference with a resource ID. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setTitle](https://developer.android.com/reference/kotlin/android/preference/Preference#setTitle(kotlin.CharSequence))`(`title:` `[CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!`)` Sets the title for this Preference with a CharSequence. This title will be placed into the ID [android.R.id#title](https://developer.android.com/reference/kotlin/android/R.id.html#title:kotlin.Int) within the View created by [onCreateView(android.view.ViewGroup)](https://developer.android.com/reference/kotlin/android/preference/Preference#onCreateView(android.view.ViewGroup)). <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                                                                                                              | [setWidgetLayoutResource](https://developer.android.com/reference/kotlin/android/preference/Preference#setWidgetLayoutResource(kotlin.Int))`(`widgetLayoutResId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` Sets the layout for the controllable widget portion of this Preference. This is inflated into the main layout. For example, a [CheckBoxPreference](https://developer.android.com/reference/kotlin/android/preference/CheckBoxPreference) would specify a custom layout (consisting of just the CheckBox) here, instead of creating its own main layout. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [shouldCommit](https://developer.android.com/reference/kotlin/android/preference/Preference#shouldCommit())`()` Returns whether the [Preference](https://developer.android.com/reference/kotlin/android/preference/Preference) should commit its saved value(s) in [getEditor()](https://developer.android.com/reference/kotlin/android/preference/Preference#getEditor()). This may return false in situations where batch committing is being done (by the manager) to improve performance. If this preference is using [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore) this value is irrelevant. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)                                                                                                        | [shouldPersist](https://developer.android.com/reference/kotlin/android/preference/Preference#shouldPersist())`()` Checks whether, at the given time this method is called, this Preference should store/restore its value(s) into the [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#) or into [PreferenceDataStore](https://developer.android.com/reference/kotlin/android/preference/PreferenceDataStore) if assigned. This, at minimum, checks whether this Preference is persistent and it currently has a key. Before you save/restore from the storage, check this first. <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | | [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)                                                                                                          | [toString](https://developer.android.com/reference/kotlin/android/preference/Preference#toString())`()` <br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | ||
| From class [TwoStatePreference](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference) |------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)             | [getDisableDependentsState](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#getDisableDependentsState())`()` Returns whether dependents are disabled when this preference is on (`true`) or when this preference is off (`false`). <br />                                                                                                                          | | [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)! | [getSummaryOff](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#getSummaryOff())`()` Returns the summary to be shown when unchecked. <br />                                                                                                                                                                                                                        | | [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)! | [getSummaryOn](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#getSummaryOn())`()` Returns the summary to be shown when checked. <br />                                                                                                                                                                                                                            | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)             | [isChecked](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#isChecked())`()` Returns the checked state. <br />                                                                                                                                                                                                                                                     | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [onClick](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#onClick())`()` <br />                                                                                                                                                                                                                                                                                    | | [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)!                    | [onGetDefaultValue](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#onGetDefaultValue(android.content.res.TypedArray,%20kotlin.Int))`(`a:` `[TypedArray](https://developer.android.com/reference/kotlin/android/content/res/TypedArray.html#)!`, `index:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` <br />                    | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [onRestoreInstanceState](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#onRestoreInstanceState(android.os.Parcelable))`(`state:` `[Parcelable](https://developer.android.com/reference/kotlin/android/os/Parcelable.html#)!`)` <br />                                                                                                                             | | [Parcelable](https://developer.android.com/reference/kotlin/android/os/Parcelable.html#)!      | [onSaveInstanceState](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#onSaveInstanceState())`()` <br />                                                                                                                                                                                                                                                            | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [onSetInitialValue](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#onSetInitialValue(kotlin.Boolean,%20kotlin.Any))`(`restoreValue:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`, `defaultValue:` `[Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)!`)` <br />                                 | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setChecked](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#setChecked(kotlin.Boolean))`(`checked:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets the checked state and saves it to the [SharedPreferences](https://developer.android.com/reference/kotlin/android/content/SharedPreferences.html#). <br />         | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setDisableDependentsState](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#setDisableDependentsState(kotlin.Boolean))`(`disableDependentsState:` `[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`)` Sets whether dependents are disabled when this preference is on (`true`) or when this preference is off (`false`). <br /> | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setSummaryOff](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#setSummaryOff(kotlin.Int))`(`summaryResId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` <br />                                                                                                                                                                  | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setSummaryOff](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#setSummaryOff(kotlin.CharSequence))`(`summary:` `[CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!`)` Sets the summary to be shown when unchecked. <br />                                                                                             | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setSummaryOn](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#setSummaryOn(kotlin.Int))`(`summaryResId:` `[Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)`)` <br />                                                                                                                                                                    | | [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)                   | [setSummaryOn](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#setSummaryOn(kotlin.CharSequence))`(`summary:` `[CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!`)` Sets the summary to be shown when checked. <br />                                                                                                 | | [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)             | [shouldDisableDependents](https://developer.android.com/reference/kotlin/android/preference/TwoStatePreference#shouldDisableDependents())`()` <br />                                                                                                                                                                                                                                                    | ||

## XML attributes

### android:disableDependentsState

```
android:disableDependentsState
```
The state (true for on, or false for off) that causes dependents to be disabled. By default, dependents will be disabled when this is unchecked, so the value of this preference is false.

May be a boolean value, such as "`true`" or "`false`".  

### android:summaryOff

```
android:summaryOff
```
The summary for the Preference in a PreferenceActivity screen when the SwitchPreference is unchecked. If separate on/off summaries are not needed, the summary attribute can be used instead.

May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character;  

### android:summaryOn

```
android:summaryOn
```
The summary for the Preference in a PreferenceActivity screen when the SwitchPreference is checked. If separate on/off summaries are not needed, the summary attribute can be used instead.

May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character;  

### android:switchTextOff

```
android:switchTextOff
```
The text used on the switch itself when in the "off" state. This should be a very SHORT string, as it appears in a small space.

May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character;  

### android:switchTextOn

```
android:switchTextOn
```
The text used on the switch itself when in the "on" state. This should be a very SHORT string, as it appears in a small space.

May be a string value, using '\\\\;' to escape characters such as '\\\\n' or '\\\\uxxxx' for a unicode character;

## Public constructors

### SwitchPreference

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
SwitchPreference(context: Context!)
```

Construct a new SwitchPreference with default style options.

|                                                                    Parameters                                                                    ||
|-----------|---------------------------------------------------------------------------------------------------------------------------------------|
| `context` | [Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!: The Context that will style this preference |

### SwitchPreference

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
SwitchPreference(
    context: Context!, 
    attrs: AttributeSet!)
```

Construct a new SwitchPreference with the given style options.

|                                                                        Parameters                                                                         ||
|-----------|------------------------------------------------------------------------------------------------------------------------------------------------|
| `context` | [Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!: The Context that will style this preference          |
| `attrs`   | [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html#)!: Style attributes that differ from the default |

### SwitchPreference

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
SwitchPreference(
    context: Context!, 
    attrs: AttributeSet!, 
    defStyleAttr: Int)
```

Construct a new SwitchPreference with the given style options.

|                                                                                                                        Parameters                                                                                                                         ||
|----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `context`      | [Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!: The Context that will style this preference                                                                                                     |
| `attrs`        | [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html#)!: Style attributes that differ from the default                                                                                            |
| `defStyleAttr` | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): An attribute in the current theme that contains a reference to a style resource that supplies default values for the view. Can be 0 to not look for defaults. |

### SwitchPreference

Added in [API level 21](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
SwitchPreference(
    context: Context!, 
    attrs: AttributeSet!, 
    defStyleAttr: Int, 
    defStyleRes: Int)
```

Construct a new SwitchPreference with the given style options.

|                                                                                                                                      Parameters                                                                                                                                      ||
|----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `context`      | [Context](https://developer.android.com/reference/kotlin/android/content/Context.html#)!: The Context that will style this preference                                                                                                                                |
| `attrs`        | [AttributeSet](https://developer.android.com/reference/kotlin/android/util/AttributeSet.html#)!: Style attributes that differ from the default                                                                                                                       |
| `defStyleAttr` | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): An attribute in the current theme that contains a reference to a style resource that supplies default values for the view. Can be 0 to not look for defaults.                            |
| `defStyleRes`  | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): A resource identifier of a style resource that supplies default values for the view, used only if defStyleAttr is 0 or can not be found in the theme. Can be 0 to not look for defaults. |

## Public methods

### getSwitchTextOff

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun getSwitchTextOff(): CharSequence!
```

**Deprecated:** *Deprecated in Java.*

|                                                                                Return                                                                                 ||
|------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------|
| [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)! | The text that will be displayed on the switch widget in the off state |

### getSwitchTextOn

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun getSwitchTextOn(): CharSequence!
```

**Deprecated:** *Deprecated in Java.*

|                                                                                Return                                                                                ||
|------------------------------------------------------------------------------------------------|----------------------------------------------------------------------|
| [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)! | The text that will be displayed on the switch widget in the on state |

### setSwitchTextOff

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun setSwitchTextOff(resId: Int): Unit
```

**Deprecated:** *Deprecated in Java.*

Set the text displayed on the switch widget in the off state. This should be a very short string; one word if possible.

|                                                      Parameters                                                       ||
|---------|--------------------------------------------------------------------------------------------------------------|
| `resId` | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The text as a string resource ID |

### setSwitchTextOff

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun setSwitchTextOff(offText: CharSequence!): Unit
```

**Deprecated:** *Deprecated in Java.*

Set the text displayed on the switch widget in the off state. This should be a very short string; one word if possible.

|                                                                 Parameters                                                                  ||
|-----------|----------------------------------------------------------------------------------------------------------------------------------|
| `offText` | [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!: Text to display in the off state |

### setSwitchTextOn

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun setSwitchTextOn(resId: Int): Unit
```

**Deprecated:** *Deprecated in Java.*

Set the text displayed on the switch widget in the on state. This should be a very short string; one word if possible.

|                                                      Parameters                                                       ||
|---------|--------------------------------------------------------------------------------------------------------------|
| `resId` | [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html): The text as a string resource ID |

### setSwitchTextOn

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
open fun setSwitchTextOn(onText: CharSequence!): Unit
```

**Deprecated:** *Deprecated in Java.*

Set the text displayed on the switch widget in the on state. This should be a very short string; one word if possible.

|                                                                Parameters                                                                 ||
|----------|---------------------------------------------------------------------------------------------------------------------------------|
| `onText` | [CharSequence](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-char-sequence/index.html)!: Text to display in the on state |

## Protected methods

### onBindView

Added in [API level 14](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
protected open fun onBindView(view: View!): Unit
```

**Deprecated:** *Deprecated in Java.*

|                                                          Parameters                                                           ||
|--------|-----------------------------------------------------------------------------------------------------------------------|
| `view` | [View](https://developer.android.com/reference/kotlin/android/view/View.html#)!: The View that shows this Preference. |