diff --git a/android/src/main/java/com/henninghall/date_picker/PickerView.java b/android/src/main/java/com/henninghall/date_picker/PickerView.java index de55dfb..fb80d15 100644 --- a/android/src/main/java/com/henninghall/date_picker/PickerView.java +++ b/android/src/main/java/com/henninghall/date_picker/PickerView.java @@ -155,7 +155,7 @@ public class PickerView extends RelativeLayout { return dateTemplate + " " + hourWheel.getFormatTemplate() + " " + minutesWheel.getFormatTemplate() - + ampmWheel.getFormatTemplate(); + + ampmWheel.getFormatTemplate(); } public String getDateString() { diff --git a/android/src/main/java/com/henninghall/date_picker/WheelChangeListenerImpl.java b/android/src/main/java/com/henninghall/date_picker/WheelChangeListenerImpl.java index 4dc3734..a539083 100644 --- a/android/src/main/java/com/henninghall/date_picker/WheelChangeListenerImpl.java +++ b/android/src/main/java/com/henninghall/date_picker/WheelChangeListenerImpl.java @@ -30,7 +30,8 @@ public class WheelChangeListenerImpl implements WheelChangeListener { try { dateFormat.setTimeZone(timeZone); Calendar date = Calendar.getInstance(timeZone); - date.setTime(dateFormat.parse(this.pickerView.getDateString())); + String toParse = this.pickerView.getDateString(); + date.setTime(dateFormat.parse(toParse)); if (minDate != null && date.before(minDate)) pickerView.applyOnVisibleWheels( new AnimateToDate(minDate) diff --git a/android/src/main/java/com/henninghall/date_picker/wheels/AmPmWheel.java b/android/src/main/java/com/henninghall/date_picker/wheels/AmPmWheel.java index bdd6e4f..48f5c6d 100644 --- a/android/src/main/java/com/henninghall/date_picker/wheels/AmPmWheel.java +++ b/android/src/main/java/com/henninghall/date_picker/wheels/AmPmWheel.java @@ -41,10 +41,15 @@ public class AmPmWheel extends Wheel { } @Override - public String getFormatTemplate() { + public String getDisplayFormatTemplate() { return Settings.usesAmPm() ? " a " : ""; } + @Override + public String getFormatTemplate() { + return " a "; + } + @Override public Paint.Align getTextAlign() { return Paint.Align.LEFT; diff --git a/android/src/main/java/com/henninghall/date_picker/wheels/DateWheel.java b/android/src/main/java/com/henninghall/date_picker/wheels/DateWheel.java index 435ad15..c48bf5c 100644 --- a/android/src/main/java/com/henninghall/date_picker/wheels/DateWheel.java +++ b/android/src/main/java/com/henninghall/date_picker/wheels/DateWheel.java @@ -33,6 +33,11 @@ public class DateWheel extends Wheel return this.pickerView.mode == Mode.date; } + @Override + public String getDisplayFormatTemplate() { + return "d"; + } + @Override public String getFormatTemplate() { return "d"; diff --git a/android/src/main/java/com/henninghall/date_picker/wheels/DayWheel.java b/android/src/main/java/com/henninghall/date_picker/wheels/DayWheel.java index d3fbc69..df6d7ad 100644 --- a/android/src/main/java/com/henninghall/date_picker/wheels/DayWheel.java +++ b/android/src/main/java/com/henninghall/date_picker/wheels/DayWheel.java @@ -111,7 +111,7 @@ public class DayWheel extends Wheel { } @Override - public String getFormatTemplate() { + public String getDisplayFormatTemplate() { String locale = pickerView.locale.getLanguage(); if(locale.equals("ko")) return "yy MMM d일 (EEE)"; @@ -123,6 +123,11 @@ public class DayWheel extends Wheel { else return "yy EEE d MMM"; } + @Override + public String getFormatTemplate() { + return "yy EEE MMM d"; + } + @Override public Paint.Align getTextAlign() { return Paint.Align.RIGHT; diff --git a/android/src/main/java/com/henninghall/date_picker/wheels/HourWheel.java b/android/src/main/java/com/henninghall/date_picker/wheels/HourWheel.java index 4e8e58c..3a1a8db 100644 --- a/android/src/main/java/com/henninghall/date_picker/wheels/HourWheel.java +++ b/android/src/main/java/com/henninghall/date_picker/wheels/HourWheel.java @@ -20,7 +20,7 @@ public class HourWheel extends Wheel { for(int i=0; i values; @@ -44,7 +45,7 @@ public abstract class Wheel { } private void clearValues(){ - this.displayFormat = new SimpleDateFormat(getFormatTemplate(), pickerView.locale); + this.displayFormat = new SimpleDateFormat(getDisplayFormatTemplate(), pickerView.locale); this.format = new SimpleDateFormat(getFormatTemplate(), LocaleUtils.toLocale("en_US")); this.values = new ArrayList<>(); this.displayValues= new ArrayList<>(); diff --git a/android/src/main/java/com/henninghall/date_picker/wheels/YearWheel.java b/android/src/main/java/com/henninghall/date_picker/wheels/YearWheel.java index ae1d9a3..7ae6963 100644 --- a/android/src/main/java/com/henninghall/date_picker/wheels/YearWheel.java +++ b/android/src/main/java/com/henninghall/date_picker/wheels/YearWheel.java @@ -59,10 +59,16 @@ public class YearWheel extends Wheel return Paint.Align.RIGHT; } + @Override + public String getDisplayFormatTemplate() { + return "y"; + } + @Override public String getFormatTemplate() { return "y"; } + } diff --git a/examples/advanced/package.json b/examples/advanced/package.json index a08439d..fee47b6 100644 --- a/examples/advanced/package.json +++ b/examples/advanced/package.json @@ -1,28 +1,28 @@ { - "name": "rn602", - "version": "0.0.1", - "private": true, - "scripts": { - "start": "react-native start", - "test": "jest", - "lint": "eslint ." - }, - "dependencies": { - "react": "16.8.6", - "react-native": "0.60.3", - "react-native-date-picker": "^2.6.1" - }, - "devDependencies": { - "@babel/core": "^7.5.4", - "@babel/runtime": "^7.5.4", - "@react-native-community/eslint-config": "^0.0.5", - "babel-jest": "^24.8.0", - "eslint": "^6.0.1", - "jest": "^24.8.0", - "metro-react-native-babel-preset": "^0.55.0", - "react-test-renderer": "16.8.6" - }, - "jest": { - "preset": "react-native" - } + "name": "rn602", + "version": "0.0.1", + "private": true, + "scripts": { + "start": "react-native start", + "test": "jest", + "lint": "eslint ." + }, + "dependencies": { + "react": "16.8.6", + "react-native": "0.60.3", + "react-native-date-picker": "../../" + }, + "devDependencies": { + "@babel/core": "^7.5.4", + "@babel/runtime": "^7.5.4", + "@react-native-community/eslint-config": "^0.0.5", + "babel-jest": "^24.8.0", + "eslint": "^6.0.1", + "jest": "^24.8.0", + "metro-react-native-babel-preset": "^0.55.0", + "react-test-renderer": "16.8.6" + }, + "jest": { + "preset": "react-native" + } } diff --git a/examples/advanced/yarn.lock b/examples/advanced/yarn.lock index 090630b..9d7071f 100644 --- a/examples/advanced/yarn.lock +++ b/examples/advanced/yarn.lock @@ -5132,10 +5132,8 @@ react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== -react-native-date-picker@^2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/react-native-date-picker/-/react-native-date-picker-2.6.1.tgz#ad322cc12a760ad7a2cabce18928652dd4f8b8f0" - integrity sha512-9FVOMulMs5mWfjWcoEuHotIh5LiJPHvrSUEsHfiYW48kME3GF/nE0DyNg4qDuJFRsZr8mIdiNyLQHQbnhGKZ/Q== +react-native-date-picker@../../: + version "2.7.3" dependencies: moment "^2.22.1"