diff --git a/src/com/android/settings/network/telephony/DefaultSubscriptionController.java b/src/com/android/settings/network/telephony/DefaultSubscriptionController.java index 168e69df2b2..5511829a61a 100644 --- a/src/com/android/settings/network/telephony/DefaultSubscriptionController.java +++ b/src/com/android/settings/network/telephony/DefaultSubscriptionController.java @@ -37,7 +37,6 @@ import androidx.preference.PreferenceScreen; import com.android.internal.annotations.VisibleForTesting; import com.android.settings.R; -import com.android.settings.Utils; import com.android.settings.network.SubscriptionUtil; import com.android.settings.network.SubscriptionsChangeListener; @@ -115,6 +114,16 @@ public abstract class DefaultSubscriptionController extends TelephonyBasePrefere updateEntries(); } + @Override + protected void refreshSummary(Preference preference) { + // Currently, cannot use ListPreference.setSummary() when the summary contains user + // generated string, because ListPreference.getSummary() is using String.format() to format + // the summary when the summary is set by ListPreference.setSummary(). + if (preference != null) { + preference.setSummaryProvider(pref -> getSummary()); + } + } + @Override public CharSequence getSummary() { final PhoneAccountHandle handle = getDefaultCallingAccountHandle();