Skip to content

Commit d003d70

Browse files
authored
增加起始时间时分秒控制
1 parent e4e0696 commit d003d70

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

pickerview/src/main/java/com/bigkoo/pickerview/view/TimePickerView.java

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import android.content.Context;
44
import android.text.TextUtils;
5+
import android.util.Log;
56
import android.view.LayoutInflater;
67
import android.view.View;
78
import android.widget.Button;
@@ -14,6 +15,7 @@
1415
import com.bigkoo.pickerview.listener.ISelectTimeCallback;
1516

1617
import java.text.ParseException;
18+
import java.text.SimpleDateFormat;
1719
import java.util.Calendar;
1820
import java.util.Date;
1921

@@ -193,6 +195,35 @@ private void initDefaultSelectedDate() {
193195
private void setTime() {
194196
int year, month, day, hours, minute, seconds;
195197
Calendar calendar = Calendar.getInstance();
198+
Log.i("TAG", "===> " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime()));
199+
boolean isInRange = true;
200+
if (mPickerOptions.startDate != null && mPickerOptions.endDate != null) {
201+
if (calendar.getTimeInMillis() < mPickerOptions.startDate.getTimeInMillis()
202+
|| calendar.getTimeInMillis() > mPickerOptions.endDate.getTimeInMillis()) {
203+
isInRange = false;
204+
calendar = mPickerOptions.endDate;
205+
}
206+
} else if (mPickerOptions.startDate != null) {
207+
if (calendar.getTimeInMillis() < mPickerOptions.startDate.getTimeInMillis()) {
208+
isInRange = false;
209+
calendar = mPickerOptions.endDate;
210+
}
211+
} else if (mPickerOptions.endDate != null) {
212+
if (calendar.getTimeInMillis() > mPickerOptions.endDate.getTimeInMillis()) {
213+
isInRange = false;
214+
calendar = mPickerOptions.endDate;
215+
}
216+
}
217+
if (!isInRange) {
218+
year = calendar.get(Calendar.YEAR);
219+
month = calendar.get(Calendar.MONTH);
220+
day = calendar.get(Calendar.DAY_OF_MONTH);
221+
hours = calendar.get(Calendar.HOUR_OF_DAY);
222+
minute = calendar.get(Calendar.MINUTE);
223+
seconds = calendar.get(Calendar.SECOND);
224+
wheelTime.setPicker(year, month, day, hours, minute, seconds);
225+
return;
226+
}
196227

197228
if (mPickerOptions.date == null) {
198229
calendar.setTimeInMillis(System.currentTimeMillis());

0 commit comments

Comments
 (0)