我正在尝试构建一个应用程序,其中有一个显示在 EditText
中的日期和时间。当用户点击 EditText
时,它应该打开 DatePicker
,如果用户选择了日期或点击了确定的 Button
,那么它应该打开自动打开TimePicker
。
我希望在同一个 EditText
中处理和显示这两个值。我已经编写了方法:getDatePicker
和 getTimePicker
,它们都有效。
我将如何组合它们?我能否在 Dialog
中打开 getDatePicker
并有一个 OK 按钮,当单击该按钮时它会将值存储在 String
中并在同一个 Dialog
?
getTimePicker
这是 getDatePicker
的代码,除了使用 TimePicker
之外,getTimePicker
看起来完全一样:
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()
就是您所需要的。
关于Android - 选择时间和日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33078476/