Browse Source

Handle wheels visibility

master
Henning Hall 7 years ago
parent
commit
6834df50f8
6 changed files with 29 additions and 4 deletions
  1. +0
    -1
      android/src/main/java/com/henninghall/date_picker/PickerView.java
  2. +5
    -0
      android/src/main/java/com/henninghall/date_picker/wheels/AmPmWheel.java
  3. +5
    -0
      android/src/main/java/com/henninghall/date_picker/wheels/DayWheel.java
  4. +6
    -1
      android/src/main/java/com/henninghall/date_picker/wheels/HourWheel.java
  5. +5
    -0
      android/src/main/java/com/henninghall/date_picker/wheels/MinutesWheel.java
  6. +8
    -2
      android/src/main/java/com/henninghall/date_picker/wheels/Wheel.java

+ 0
- 1
android/src/main/java/com/henninghall/date_picker/PickerView.java View File

@ -47,7 +47,6 @@ public class PickerView extends RelativeLayout {
dateFormat = new SimpleDateFormat(getDateFormatTemplate(), locale);
((ViewManager) ampmPicker.getParent()).removeView(ampmPicker);
}
WheelChangeListener onWheelChangeListener = new WheelChangeListener(){

+ 5
- 0
android/src/main/java/com/henninghall/date_picker/wheels/AmPmWheel.java View File

@ -28,6 +28,11 @@ public class AmPmWheel extends Wheel {
picker.setValue(0);
}
@Override
boolean visible() {
return Utils.usesAmPm(locale);
}
@Override
public String getFormatTemplate() {
return Utils.usesAmPm(locale) ? "a" : "";

+ 5
- 0
android/src/main/java/com/henninghall/date_picker/wheels/DayWheel.java View File

@ -41,6 +41,11 @@ public class DayWheel extends Wheel {
}
@Override
boolean visible() {
return true;
}
@Override
public String getFormatTemplate() {
return "yy EEE d MMM";

+ 6
- 1
android/src/main/java/com/henninghall/date_picker/wheels/HourWheel.java View File

@ -28,9 +28,14 @@ public class HourWheel extends Wheel {
picker.setMaxValue(numberOfHours - 1);
}
@Override
public boolean visible() {
return true;
}
@Override
public String getFormatTemplate() {
return Utils.usesAmPm(locale) ? "hh": "HH";
return Utils.usesAmPm(locale) ? "h": "HH";
}
}

+ 5
- 0
android/src/main/java/com/henninghall/date_picker/wheels/MinutesWheel.java View File

@ -26,6 +26,11 @@ public class MinutesWheel extends Wheel {
picker.setMaxValue(59);
}
@Override
boolean visible() {
return true;
}
@Override
public String getFormatTemplate() {
return "mm";

+ 8
- 2
android/src/main/java/com/henninghall/date_picker/wheels/Wheel.java View File

@ -16,6 +16,7 @@ import cn.carbswang.android.numberpickerview.library.NumberPickerView;
public abstract class Wheel {
abstract void init();
abstract boolean visible();
abstract String getFormatTemplate();
ArrayList<String> values;
@ -42,7 +43,7 @@ public abstract class Wheel {
}
public String getValue() {
return values.get(picker.getValue());
return visible() ? values.get(picker.getValue()) : "";
}
public void setValue(Date date) {
@ -57,7 +58,12 @@ public abstract class Wheel {
private void refresh() {
this.format = new SimpleDateFormat(getFormatTemplate(), locale);
init();
if (visible()) init();
else remove();
}
private void remove() {
((ViewManager) picker.getParent()).removeView(picker);
}
}

Loading…
Cancel
Save