我正在尝试构建一个其中在EditText中显示日期和时间的应用程序。用户单击EditText时,应打开DatePicker,如果用户选择了日期或单击确定的Button,则应自动打开TimePicker

我希望两个值都被处理并显示在同一EditText中。我已经编写了方法:getDatePickergetTimePicker,它们都可以工作。

我将如何结合它们?我能否在getDatePicker中打开Dialog并具有“确定”按钮,单击该按钮时它将值存储在String中,并在同一getTimePicker中打开Dialog

这是getDatePicker的代码,除了使用getTimePicker之外,TimePicker看起来完全相同:

private static void getDatePicker(Context context, final TextView dateValue)
{
    final Calendar calendar = Calendar.getInstance();
    int year = calendar.get(Calendar.YEAR);
    final int month = calendar.get(Calendar.MONTH);
    int day = calendar.get(Calendar.DAY_OF_MONTH);

    DatePickerDialog datePicker = new DatePickerDialog(context, new DatePickerDialog.OnDateSetListener()
    {
        @Override
        public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth)
        {
            // Month formatting and handling the month index starting at 0 instead of 1
            String monthValue = ((monthOfYear + 1) > 0 && (monthOfYear + 1) < 10) ? ("0" + (monthOfYear + 1)) : String.valueOf(monthOfYear + 1);
            // Day formatting
            String dayValue = (dayOfMonth > 0 && dayOfMonth < 10) ? ("0" + dayOfMonth) : String.valueOf(dayOfMonth);
            String dateToPrint = year + "-" + monthValue + "-" + dayValue;
            dateValue.setText(dateToPrint);
        }
    }, year, month, day);
    datePicker.show();
}


任何帮助,将不胜感激。谢谢

最佳答案

dateValue.appendText()是您所需要的。

10-06 05:45
查看更多