/**
* 打开日期选择器
*
* @param params
* @param callback
*/
@ReactMethod
public void openDatePicker(final ReadableMap params, final Callback callback) {
TimePickerView tpv = new TimePickerBuilder(mActivity, new OnTimeSelectListener() {
@Override
public void onTimeSelect(Date date, View v) {
// Toast.makeText(MainActivity.this, getTime(date), Toast.LENGTH_SHORT).show();
}
}).build();
tpv.show();
}
@SuppressLint("SetTextI18n")
private void showDatePicker() {
Calendar startDate = Calendar.getInstance();
Calendar showDate = Calendar.getInstance();
//最初时间为1980-1-1
startDate.set(1980, 1, 1);
//第一个选中时间为当前年份-3,因为其它三个已经存在按钮
showDate.set(selectYear > (nowYear-3) ? (nowYear-3) : selectYear , 1, 1);
TimePickerView pickerYearDialog = new TimePickerBuilder(this, (date, v) -> {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
//选择年份
selectYear = calendar.get(Calendar.YEAR);
//清除旧的选择
clearYearSelect();
//3年内选中按钮,其它改变其它按钮
if (nowYear - selectYear < 3){
int n = nowYear - selectYear;
if (n == 0){
year01Tv.setTextColor(CommonUtils.getResColor(R.color.immutable_text_theme));
}else if (n == 1){
year02Tv.setTextColor(CommonUtils.getResColor(R.color.immutable_text_theme));
}else {
year03Tv.setTextColor(CommonUtils.getResColor(R.color.immutable_text_theme));
}
}else {
yearOtherTv.setTextColor(CommonUtils.getResColor(R.color.immutable_text_theme));
yearOtherTv.setText(selectYear+"年");
}
initNowDate(selectYear);
})
.setType(new boolean[]{true, false, false, false, false, false})// 默认全部显示
.setLabel("年", "月", "日", "时", "分", "秒")//默认设置为年月日时分秒
.setRangDate(startDate, Calendar.getInstance())//起始终止年月日设定
.setDate(showDate)//当前时间
.setSubmitColor(CommonUtils.getResColor(R.color.immutable_text_theme))//确定按钮文字颜色
.setCancelColor(CommonUtils.getResColor(R.color.immutable_text_pink))//取消按钮文字颜色
.setBgColor(CommonUtils.getResColor(R.color.layout_bg_color))
.setTitleBgColor(CommonUtils.getResColor(R.color.item_bg_color))
.setTextColorCenter(CommonUtils.getResColor(R.color.text_black))
.isCyclic(false)//是否循环滚动
.build();
pickerYearDialog.show();
}
public TimePickerView build() {
return new TimePickerView(mPickerOptions);
}
public TimePickerView build() {
return new TimePickerView(mPickerOptions);
}