From bcd400ef0044b00a31d3d6a23888b173fa891ceb Mon Sep 17 00:00:00 2001 From: Adrian Ulrich Date: Mon, 5 Oct 2015 20:50:26 +0200 Subject: [PATCH] support for sbpSteps value --- res/values/seekbarpreference_attr.xml | 1 + .../blinkenlights/android/vanilla/SeekBarPreference.java | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/res/values/seekbarpreference_attr.xml b/res/values/seekbarpreference_attr.xml index 14c7c90e..08cebffa 100644 --- a/res/values/seekbarpreference_attr.xml +++ b/res/values/seekbarpreference_attr.xml @@ -2,6 +2,7 @@ + diff --git a/src/ch/blinkenlights/android/vanilla/SeekBarPreference.java b/src/ch/blinkenlights/android/vanilla/SeekBarPreference.java index 45963979..857f6d42 100644 --- a/src/ch/blinkenlights/android/vanilla/SeekBarPreference.java +++ b/src/ch/blinkenlights/android/vanilla/SeekBarPreference.java @@ -51,6 +51,10 @@ public class SeekBarPreference extends DialogPreference implements SeekBar.OnSee * The initially configured value (updated on dialog close) */ private int mInitialValue; + /** + * Steps to take for the value + */ + private int mSteps; /** * The format to use for the summary */ @@ -89,6 +93,7 @@ public class SeekBarPreference extends DialogPreference implements SeekBar.OnSee TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.SeekBarPreference); mMaxValue = a.getInteger(R.styleable.SeekBarPreference_sbpMaxValue, 0); + mSteps = a.getInteger(R.styleable.SeekBarPreference_sbpSteps, 1); mSummaryValueMultiplication = a.getFloat(R.styleable.SeekBarPreference_sbpSummaryValueMultiplication, 0f); mSummaryValueAddition = a.getFloat(R.styleable.SeekBarPreference_sbpSummaryValueAddition, 0f); mSummaryFormat = a.getString(R.styleable.SeekBarPreference_sbpSummaryFormat); @@ -166,6 +171,8 @@ public class SeekBarPreference extends DialogPreference implements SeekBar.OnSee public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { if (fromUser) { + progress = (progress/mSteps) * mSteps; + seekBar.setProgress(progress); setValue(progress); } }