我有一个编辑文本和一个按钮,当我单击按钮时,它会打开一个日期选择器,并将所选日期输入到编辑框中。它以 24 小时格式做到这一点,这就是我想要的......但如果日期的部分是 1 位数字,它只会显示为 1 位数字。我想做的是应用一种格式,如果它是 1 位数字,我希望它显示 2 位数字。这样。3/2/2017,我希望它是 03/02/2017。
它也在做同样的事情。我不确定代码的哪一部分也发布了,如果您需要代码以及什么代码,请告诉我,我将在此处发布。
几个选项:
使用 SimpleDateFormat 类。
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy", Locale.US);
editBox.setText(dateFormat.format(date));
格式字符串 MM/dd/yyyy 将提供您需要的内容。 如果需要,您还可以通过更改格式字符串(例如"MM/dd/yyyy hh:mm:ss")来显示时间值。 这假定您正在显示存储在 Date 对象中的日期(在本例中称为 date)。
或者使用 String.format,
editBox.setText(String.format("%02d/%02d/%04d",month,day,year));
%02 表示使用 2 个位置和前导零。
试试这个:
int year = mDatePicker.getYear();
int month = mDatePicker.getMonth();
int day = mDatePicker.getDayOfMonth();
if(month < 10){
month = "0" + month;
}
if(day < 10){
day = "0" + day ;
}
myText.setText(day + "-" + month + "-" + year);