diff --git a/lib/java/com/google/android/material/slider/BaseSlider.java b/lib/java/com/google/android/material/slider/BaseSlider.java index b4eacfaef2b..d2954a9429a 100644 --- a/lib/java/com/google/android/material/slider/BaseSlider.java +++ b/lib/java/com/google/android/material/slider/BaseSlider.java @@ -304,6 +304,7 @@ abstract class BaseSlider< @NonNull private final Paint inactiveTicksPaint; @NonNull private final Paint activeTicksPaint; @NonNull private final Paint stopIndicatorPaint; + @NonNull private final Locale locale; @NonNull private final AccessibilityHelper accessibilityHelper; private final AccessibilityManager accessibilityManager; private AccessibilityEventSender accessibilityEventSender; @@ -465,6 +466,8 @@ public BaseSlider( // Initialize with just this view's visibility. thisAndAncestorsVisible = isShown(); + locale = context.getResources().getConfiguration().locale; + inactiveTrackPaint = new Paint(); activeTrackPaint = new Paint(); @@ -3547,7 +3550,7 @@ private String formatValue(float value) { return formatter.getFormattedValue(value); } - return String.format((int) value == value ? "%.0f" : "%.2f", value); + return String.format(locale, (int) value == value ? "%.0f" : "%.2f", value); } private void setValueForLabel(TooltipDrawable label, float value) { @@ -4155,7 +4158,7 @@ protected void onPopulateNodeForVirtualView( info.setStateDescription(stateDescription); } else { contentDescription.append( - String.format(Locale.getDefault(), "%s, %s", verbalValueType, verbalValue)); + String.format(slider.locale, "%s, %s", verbalValueType, verbalValue)); } info.setContentDescription(contentDescription.toString());