Here’s a quick Protip for people who are still writing complex onPreferenceChanged
code to show the selected value of a ListPreference
Just add android:summary="%s"
and Android will automatically do it for you ;)
For example, your code might look like : -
<ListPreference
android:summary="%s"
android:defaultValue="km"
android:entries="@array/distance_unit_names"
android:entryValues="@array/distance_unit_values"
android:key="distance_unit"
android:title="Distance Unit"/>
Android will even put the currently selected value when you enter the preference screen.