如果EditText
的内容为空,则DatePickerDialog
显示当前日期:
Calendar calendrier = Calendar.getInstance();
DatePickerDialog picker = new DatePickerDialog(ctxt, evt, calendrier.get(Calendar.YEAR), calendrier.get(Calendar.MONTH), calendrier.get(Calendar.DAY_OF_MONTH));
但是,如果此内容不为空,我希望DatePickerDialog
根据EdiText
的内容显示日期。怎么做?
答案 0 :(得分:1)
这取决于用户将日期放在EditText
中的格式。例如,如果格式为dd/MM/yyyy
,则:
SimpleDateFormat formatter =
new SimpleDateFormat("dd/MM/yyyy");
Date date = formatter.parse(eddittext.getText().toString());
Calendar calendrier = Calendar.getInstance();
calendrier.setTime(date);
DatePickerDialog picker = new DatePickerDialog(ctxt, evt, calendrier.get(Calendar.YEAR), calendrier.get(Calendar.MONTH), calendrier.get(Calendar.DAY_OF_MONTH));
这假设用户以正确的格式放置数据。
答案 1 :(得分:1)
您可以先从您的edittext获取字符串,然后将其转换为日期(请检查此http://www.mkyong.com/java/how-to-convert-string-to-date-java/以进行转换。) 然后从日期对象中获取年,月,日,并在显示这样的选择器时将其传递给日期选择器
datePicker.init(year, month, day, null);
你走了。干杯!!
答案 2 :(得分:1)
是的,你可以很容易地做到这一点 updateDate(int year, int month, int dayOfMonth)的DatePicker方法,您必须将日期,月份和年份作为参数传递。