From d40d67b23b2818f6468d84fd7ddf28414a63b704 Mon Sep 17 00:00:00 2001
From: Philippe Auriach
Date: Fri, 20 Oct 2017 14:22:18 +0200
Subject: [PATCH] allow hiding duration view
---
.../date/SmoothDateRangePickerFragment.java | 35 ++++++++++++++++---
1 file changed, 30 insertions(+), 5 deletions(-)
diff --git a/library/src/main/java/com/leavjenn/smoothdaterangepicker/date/SmoothDateRangePickerFragment.java b/library/src/main/java/com/leavjenn/smoothdaterangepicker/date/SmoothDateRangePickerFragment.java
index 3d6ed5a..bdf17b6 100644
--- a/library/src/main/java/com/leavjenn/smoothdaterangepicker/date/SmoothDateRangePickerFragment.java
+++ b/library/src/main/java/com/leavjenn/smoothdaterangepicker/date/SmoothDateRangePickerFragment.java
@@ -159,6 +159,8 @@ public class SmoothDateRangePickerFragment extends DialogFragment implements OnC
private boolean mDelayAnimation = true;
+ private boolean mShowDuration = true;
+
// Accessibility strings.
private String mDayPickerDescription;
private String mSelectDay;
@@ -204,10 +206,25 @@ public SmoothDateRangePickerFragment() {
* @param dayOfMonth The initial day of the dialog.
*/
public static SmoothDateRangePickerFragment newInstance(OnDateRangeSetListener callBack, int year,
- int monthOfYear,
- int dayOfMonth) {
+ int monthOfYear,
+ int dayOfMonth,
+ boolean showDuration) {
SmoothDateRangePickerFragment ret = new SmoothDateRangePickerFragment();
- ret.initialize(callBack, year, monthOfYear, dayOfMonth);
+ ret.initialize(callBack, year, monthOfYear, dayOfMonth, showDuration);
+ return ret;
+ }
+
+ /**
+ * @param callBack How the parent is notified that the date is set.
+ * @param year The initial year of the dialog.
+ * @param monthOfYear The initial month of the dialog.
+ * @param dayOfMonth The initial day of the dialog.
+ */
+ public static SmoothDateRangePickerFragment newInstance(OnDateRangeSetListener callBack, int year,
+ int monthOfYear,
+ int dayOfMonth) {
+ SmoothDateRangePickerFragment ret = new SmoothDateRangePickerFragment();
+ ret.initialize(callBack, year, monthOfYear, dayOfMonth, true);
return ret;
}
@@ -219,11 +236,11 @@ public static SmoothDateRangePickerFragment newInstance(OnDateRangeSetListener c
SmoothDateRangePickerFragment ret = new SmoothDateRangePickerFragment();
Calendar todayCal = Calendar.getInstance();
ret.initialize(callBack, todayCal.get(Calendar.YEAR), todayCal.get(Calendar.MONTH),
- todayCal.get(Calendar.DAY_OF_MONTH));
+ todayCal.get(Calendar.DAY_OF_MONTH), true);
return ret;
}
- public void initialize(OnDateRangeSetListener callBack, int year, int monthOfYear, int dayOfMonth) {
+ public void initialize(OnDateRangeSetListener callBack, int year, int monthOfYear, int dayOfMonth, boolean showDuration) {
mCallBack = callBack;
mCalendar.set(Calendar.YEAR, year);
mCalendar.set(Calendar.MONTH, monthOfYear);
@@ -236,6 +253,7 @@ public void initialize(OnDateRangeSetListener callBack, int year, int monthOfYea
mAccentColor = -1;
mVibrate = true;
mDismissOnPause = false;
+ mShowDuration = showDuration;
}
@Override
@@ -320,6 +338,9 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container,
mYearViewEnd.setOnClickListener(this);
mDurationView = (LinearLayout) view.findViewById(R.id.date_picker_duration_layout);
+ if(!mShowDuration) {
+ mDurationView.setVisibility(View.GONE);
+ }
mDurationView.setOnClickListener(this);
mDurationTextView = (TextView) view.findViewById(R.id.date_picker_duration_days);
mDurationEditText = (EditText) view.findViewById(R.id.date_picker_duration_days_et);
@@ -781,6 +802,10 @@ public void setMaxDate(Calendar calendar) {
}
}
+ public void setShowDuration(boolean showDuration) {
+ this.mShowDuration = showDuration;
+ }
+
/**
* @return The maximal date supported by this DatePicker. Null if it has not been set.
*/