diff options
| author | Chet Haase <chet@google.com> | 2014-08-06 07:51:50 -0700 |
|---|---|---|
| committer | Chet Haase <chet@google.com> | 2014-08-07 14:28:49 +0000 |
| commit | 3053b2fdcf7486f2e2f572f9b05ce65dacdd2b4c (patch) | |
| tree | 6b1b3dd6d6b7aab5472c6f8393c5f6c1ed16c0d4 /core/java/android/widget/TimePicker.java | |
| parent | c4489f990f3eaa5d11eb2c08db2af4a7b3818fe7 (diff) | |
Allow TimePicker/DatePicker to use legacy layout style
In L, the TimePicker was rewritten to use a clock face and the
DatePicker was rewritten to use a calendar. This
change allows developers to opt into the old style instead
(android:timePickerMode="spinner|clock" and
android:datePickerMode="spinner|calendar").)
Issue #16717952 Pre-L style android.widget.TimePicker on L
Issue #16846963 Allow developer to use legacy DatePicker appearance
Change-Id: I4ee071fcbc5bf25eab83d6a5cb6ff352a603f90a
Diffstat (limited to 'core/java/android/widget/TimePicker.java')
| -rw-r--r-- | core/java/android/widget/TimePicker.java | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/core/java/android/widget/TimePicker.java b/core/java/android/widget/TimePicker.java index 026a8ee0849b..c48866692190 100644 --- a/core/java/android/widget/TimePicker.java +++ b/core/java/android/widget/TimePicker.java @@ -45,6 +45,9 @@ import java.util.Locale; */ @Widget public class TimePicker extends FrameLayout { + private static final int MODE_SPINNER = 1; + private static final int MODE_CLOCK = 2; + private final TimePickerDelegate mDelegate; /** @@ -77,15 +80,19 @@ public class TimePicker extends FrameLayout { final TypedArray a = context.obtainStyledAttributes( attrs, R.styleable.TimePicker, defStyleAttr, defStyleRes); - final boolean legacyMode = a.getBoolean(R.styleable.TimePicker_legacyMode, true); + int mode = a.getInt(R.styleable.TimePicker_timePickerMode, MODE_SPINNER); a.recycle(); - if (legacyMode) { - mDelegate = new LegacyTimePickerDelegate( - this, context, attrs, defStyleAttr, defStyleRes); - } else { - mDelegate = new android.widget.TimePickerDelegate( - this, context, attrs, defStyleAttr, defStyleRes); + switch (mode) { + case MODE_CLOCK: + mDelegate = new TimePickerSpinnerDelegate( + this, context, attrs, defStyleAttr, defStyleRes); + break; + case MODE_SPINNER: + default: + mDelegate = new TimePickerClockDelegate( + this, context, attrs, defStyleAttr, defStyleRes); + break; } } |
