ListPreference
public
class
ListPreference
extends DialogPreference
java.lang.Object | |||
↳ | androidx.preference.Preference | ||
↳ | androidx.preference.DialogPreference | ||
↳ | androidx.preference.ListPreference |
A Preference
that displays a list of entries as a dialog.
This preference saves a string value. This string will be the value from the
setEntryValues(CharSequence[])
array.
Summary
Nested classes | |
---|---|
class |
ListPreference.SimpleSummaryProvider
A simple |
Inherited constants |
---|
Public constructors | |
---|---|
ListPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)
|
|
ListPreference(Context context, AttributeSet attrs, int defStyleAttr)
|
|
ListPreference(Context context, AttributeSet attrs)
|
|
ListPreference(Context context)
|
Public methods | |
---|---|
int
|
findIndexOfValue(String value)
Returns the index of the given value (in the entry values array). |
CharSequence[]
|
getEntries()
The list of entries to be shown in the list in subsequent dialogs. |
CharSequence
|
getEntry()
Returns the entry corresponding to the current value. |
CharSequence[]
|
getEntryValues()
Returns the array of values to be saved for the preference. |
CharSequence
|
getSummary()
Returns the summary of this preference. |
String
|
getValue()
Returns the value of the key. |
void
|
setEntries(CharSequence[] entries)
Sets the human-readable entries to be shown in the list. |
void
|
setEntries(int entriesResId)
|
void
|
setEntryValues(int entryValuesResId)
|
void
|
setEntryValues(CharSequence[] entryValues)
The array to find the value to save for a preference when an entry from entries is selected. |
void
|
setSummary(CharSequence summary)
Sets the summary for this preference with a CharSequence. |
void
|
setValue(String value)
Sets the value of the key. |
void
|
setValueIndex(int index)
Sets the value to the given index from the entry values. |
Protected methods | |
---|---|
Object
|
onGetDefaultValue(TypedArray a, int index)
Called when a preference is being inflated and the default value attribute needs to be read. |
void
|
onRestoreInstanceState(Parcelable state)
Hook allowing a preference to re-apply a representation of its internal state that had
previously been generated by |
Parcelable
|
onSaveInstanceState()
Hook allowing a preference to generate a representation of its internal state that can later be used to create a new instance with that same state. |
void
|
onSetInitialValue(Object defaultValue)
Implement this to set the initial value of the preference. |
Inherited methods | |
---|---|
Public constructors
ListPreference
public ListPreference (Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)
Parameters | |
---|---|
context |
Context |
attrs |
AttributeSet |
defStyleAttr |
int |
defStyleRes |
int |
ListPreference
public ListPreference (Context context, AttributeSet attrs, int defStyleAttr)
Parameters | |
---|---|
context |
Context |
attrs |
AttributeSet |
defStyleAttr |
int |
ListPreference
public ListPreference (Context context, AttributeSet attrs)
Parameters | |
---|---|
context |
Context |
attrs |
AttributeSet |
Public methods
findIndexOfValue
public int findIndexOfValue (String value)
Returns the index of the given value (in the entry values array).
Parameters | |
---|---|
value |
String : The value whose index should be returned |
Returns | |
---|---|
int |
The index of the value, or -1 if not found |
getEntries
public CharSequence[] getEntries ()
The list of entries to be shown in the list in subsequent dialogs.
Returns | |
---|---|
CharSequence[] |
The list as an array |
getEntry
public CharSequence getEntry ()
Returns the entry corresponding to the current value.
Returns | |
---|---|
CharSequence |
The entry corresponding to the current value, or null
|
getEntryValues
public CharSequence[] getEntryValues ()
Returns the array of values to be saved for the preference.
Returns | |
---|---|
CharSequence[] |
The array of values |
getSummary
public CharSequence getSummary ()
Returns the summary of this preference. If a Preference.SummaryProvider
has been set for this
preference, it will be used to provide the summary returned by this method.
Returns | |
---|---|
CharSequence |
The summary |
getValue
public String getValue ()
Returns the value of the key. This should be one of the entries in getEntryValues()
.
Returns | |
---|---|
String |
The value of the key |
setEntries
public void setEntries (CharSequence[] entries)
Sets the human-readable entries to be shown in the list. This will be shown in subsequent dialogs.
Each entry must have a corresponding index in setEntryValues(CharSequence[])
.
Parameters | |
---|---|
entries |
CharSequence : The entries |
See also:
setEntries
public void setEntries (int entriesResId)
Parameters | |
---|---|
entriesResId |
int : The entries array as a resource |
See also:
setEntryValues
public void setEntryValues (int entryValuesResId)
Parameters | |
---|---|
entryValuesResId |
int : The entry values array as a resource |
See also:
setEntryValues
public void setEntryValues (CharSequence[] entryValues)
The array to find the value to save for a preference when an entry from entries is selected. If a user clicks on the second item in entries, the second item in this array will be saved to the preference.
Parameters | |
---|---|
entryValues |
CharSequence : The array to be used as values to save for the preference
|
setSummary
public void setSummary (CharSequence summary)
Sets the summary for this preference with a CharSequence.
You can also use a Preference.SummaryProvider
to dynamically configure the summary of this
preference.
Parameters | |
---|---|
summary |
CharSequence : The summary for the preference |
setValue
public void setValue (String value)
Sets the value of the key. This should be one of the entries in getEntryValues()
.
Parameters | |
---|---|
value |
String : The value to set for the key
|
setValueIndex
public void setValueIndex (int index)
Sets the value to the given index from the entry values.
Parameters | |
---|---|
index |
int : The index of the value to set
|
Protected methods
onGetDefaultValue
protected Object onGetDefaultValue (TypedArray a, int index)
Called when a preference is being inflated and the default value attribute needs to be read. Since different preference types have different value types, the subclass should get and return the default value which will be its value type.
For example, if the value type is String, the body of the method would proxy to
TypedArray.getString(int)
.
Parameters | |
---|---|
a |
TypedArray : The set of attributes |
index |
int : The index of the default value attribute |
Returns | |
---|---|
Object |
The default value of this preference type |
onRestoreInstanceState
protected void onRestoreInstanceState (Parcelable state)
Hook allowing a preference to re-apply a representation of its internal state that had
previously been generated by onSaveInstanceState()
. This function will never be
called with a null state.
Parameters | |
---|---|
state |
Parcelable : The saved state that had previously been returned by
onSaveInstanceState() . |
onSaveInstanceState
protected Parcelable onSaveInstanceState ()
Hook allowing a preference to generate a representation of its internal state that can later be used to create a new instance with that same state. This state should only contain information that is not persistent or can be reconstructed later.
Returns | |
---|---|
Parcelable |
A Parcelable object containing the current dynamic state of this preference, or
null if there is nothing interesting to save. The default implementation returns
null . |
onSetInitialValue
protected void onSetInitialValue (Object defaultValue)
Implement this to set the initial value of the preference.
If you are persisting values to SharedPreferences
or a PreferenceDataStore
you should restore the saved value for the preference.
If you are not persisting values, or there is no value saved for the preference, you should set the value of the preference to defaultValue.
Parameters | |
---|---|
defaultValue |
Object : The default value for the preference if set, otherwise null .
|
Content and code samples on this page are subject to the licenses described in the Content License. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2020-09-30 UTC.