diff --git a/res/values/seekbarpreference_attr.xml b/res/values/seekbarpreference_attr.xml index 08cebffa..e073bfcc 100644 --- a/res/values/seekbarpreference_attr.xml +++ b/res/values/seekbarpreference_attr.xml @@ -7,5 +7,6 @@ + diff --git a/src/ch/blinkenlights/android/vanilla/SeekBarPreference.java b/src/ch/blinkenlights/android/vanilla/SeekBarPreference.java index 857f6d42..0997ca3d 100644 --- a/src/ch/blinkenlights/android/vanilla/SeekBarPreference.java +++ b/src/ch/blinkenlights/android/vanilla/SeekBarPreference.java @@ -63,6 +63,10 @@ public class SeekBarPreference extends DialogPreference implements SeekBar.OnSee * The text to use in the summary */ private String mSummaryText; + /** + * Text to display if the value equals zero + */ + private String mZeroText; /** * Add given value to summary value */ @@ -100,6 +104,7 @@ public class SeekBarPreference extends DialogPreference implements SeekBar.OnSee mSummaryFormat = (mSummaryFormat == null ? "%s %.1f" : mSummaryFormat); mSummaryText = a.getString(R.styleable.SeekBarPreference_sbpSummaryText); mSummaryText = (mSummaryText == null ? "" : mSummaryText); + mZeroText = a.getString(R.styleable.SeekBarPreference_sbpSummaryZeroText); // unlike other strings, this may be null a.recycle(); } @@ -136,7 +141,12 @@ public class SeekBarPreference extends DialogPreference implements SeekBar.OnSee if (mSummaryValueMultiplication != 0f) fValue = fValue * mSummaryValueMultiplication; - return String.format(mSummaryFormat, mSummaryText, fValue); + String result = String.format(mSummaryFormat, mSummaryText, fValue); + + if (fValue == 0f && mZeroText != null) + result = mZeroText; + + return result; } @Override