如何更改日期选取器对话框在 EditText 中输入它的格式



我有一个编辑文本和一个按钮,当我单击按钮时,它会打开一个日期选择器,并将所选日期输入到编辑框中。它以 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);

最新更新