android中的日期选择器面临问题
在我的申请表中,我必须注明选取者的日期,从日期到日期。我正在使用onCreateDialog()方法。所以我第一次从日期选择器中选择日期,并将它们放入编辑文本中。然后,当我再次从日期选择器中选择日期时,在日期选择器中显示我已经选择的日期。但如果我移动到同一屏幕中的其他搜索(活动),并尝试从日期选择器中选择日期,则日期选择器仍然显示以前的日期。不是当前日期android中的日期选择器面临问题,android,Android,在我的申请表中,我必须注明选取者的日期,从日期到日期。我正在使用onCreateDialog()方法。所以我第一次从日期选择器中选择日期,并将它们放入编辑文本中。然后,当我再次从日期选择器中选择日期时,在日期选择器中显示我已经选择的日期。但如果我移动到同一屏幕中的其他搜索(活动),并尝试从日期选择器中选择日期,则日期选择器仍然显示以前的日期。不是当前日期 protected Dialog onCreateDialog(int id) { final Calendar c = Calend
protected Dialog onCreateDialog(int id) {
final Calendar c = Calendar.getInstance();
switch (id) {
case DATE_DIALOG_ID1:
return new DatePickerDialog(this, mDateSetListener, c.get(Calendar.YEAR),
c.get(Calendar.MONTH), c.get(Calendar.DAY_OF_MONTH));
case DATE_DIALOG_ID2:
return new DatePickerDialog(this, mDateSetListener2, c.get(Calendar.YEAR),
c.get(Calendar.MONTH), c.get(Calendar.DAY_OF_MONTH));
}
return null;
}
也许您可以再次尝试清楚地写下您的问题,但就我对您的问题的理解而言,您可能需要查看onDateChanged()回调方法。我假设您在onDateChanged()中有一个updateDialog()方法,您可能希望检查该方法是否存在错误 我想你看过这个链接,他们展示了如何使用日期选择器 祝你好运 对于您在“开始日期”和“截止日期”对话框中询问的第二个问题 根据你所说的,我认为有一个小错误,比如 1) 使用R.id.datepicker2代替R.id.datepicker1 或 2) onDateChangedListener()中有混音。我相信有更好的方法可以做到这一点,但请尝试检查是否有下面两个不同的侦听器
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);
DatePicker fromDatePicker = (DatePicker) findViewById(R.id.datePicker1);
datePicker.init(mYear, mMonth, mDay, new OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
//things you want to happen when datepicker1 is changed in your case the From date field
}
});
DatePicker toDatePicker = (DatePicker) findViewById(R.id.datePicker1);
datePicker.init(mYear, mMonth, mDay, new OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
//things you want to happen when datepicker2 is changed in your case the To date field
}
});
我部分解决了上述问题,但现在我面临一个问题。我有两个日期字段。一个是“开始日期”,另一个是“截止日期”。第一次,如果我点击From和To date,它们都只给出了今天的日期。现在假设我选择从2011年1月26日到2011年2月15日。然后再次单击From Date字段,Datepicker将显示2011年2月15日。有人能帮我吗?你可能想检查一下对上述答案所做的编辑,看看它是否解决了你的问题。在on Prepare Dialog switch案例中,我忘记了在每种情况下都提供中断。我认为问题不是由于缺勤中断关键字造成的。您已经使用了return关键字,这是确定的。