在我的Android项目中,我有一个直接从1900年开始的DatePicker。
以下是源代码: -
private void selectDate()
{
dpd = new DatePickerDialog(getActivity(),
new DatePickerDialog.OnDateSetListener()
{
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth)
{
c.set(year, monthOfYear, dayOfMonth);
selDate=year+"/"+monthOfYear+"/"+dayOfMonth;
Toast.makeText(getActivity(), dayOfMonth + "-" + (monthOfYear + 1) + "-" + year, Toast.LENGTH_LONG).show();
}
}, mYear, mMonth, mDay);
dpd.show();
}
以下是相同的屏幕截图: -
正如您所见,日历从1900年开始,但我希望它从当前日期开始
此外,您可以在左上角看到'2',点击'2'我可以将年份改为我想要的;但我不想在我的日期选择器中使用'2'符号/如何将名称'2'更改为'更改年份'文本?
该怎么办?我需要在哪里加入必要的变更?
提前致谢。
我编辑了我的代码如下,现在我得到的是当前日期,即2016年10月
private void selectDate()
{
dpd = new DatePickerDialog(getActivity(),
new DatePickerDialog.OnDateSetListener()
{
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth)
{
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, monthOfYear);
c.set(Calendar.DAY_OF_MONTH, dayOfMonth);
selDate=year+"/"+monthOfYear+"/"+dayOfMonth;
Toast.makeText(getActivity(), dayOfMonth + "-" + (monthOfYear + 1) + "-" + year, Toast.LENGTH_LONG).show();
}
}, mYear, mMonth, mDay);
dpd.getDatePicker().setMinDate(System.currentTimeMillis());
dpd.show();
}
这是更新的屏幕截图:
答案 0 :(得分:1)
试试这个:
Calendar c = Calendar.getInstance();
c.setTimeInMillis(System.currentTimeMillis());
答案 1 :(得分:1)
查看此代码段
while (true) {
echo '<title>'.$a.'</title>';
sleep(5)
echo '<title>'.$b.'</title>';
}
答案 2 :(得分:0)
调用DatePickerDialog
时,需要将当前日期作为参数传递 // Use the current date as the default date in the picker
final Calendar c = Calendar.getInstance();
int mYear = c.get(Calendar.YEAR);
int mMonth = c.get(Calendar.MONTH);
int mDay = c.get(Calendar.DAY_OF_MONTH);
根据您的代码,我看不到您为mYear
,mMonth
和mDate
分配值的位置。
答案 3 :(得分:0)
我希望这段代码能为你工作..
String strThatDay = datePicker.getYear() + "/" + (datePicker.getMonth() + 1) + "/" + datePicker.getDayOfMonth();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd");
Date choosenDate = null;
try {
choosenDate = formatter.parse(strThatDay);//catch exception
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
final Calendar todayCal = Calendar.getInstance();
todayCal.setTime(choosenDate);
答案 4 :(得分:0)
Calendar c = Calendar.getInstance();
int mYear = c.get(Calendar.YEAR);
int mMonth = c.get(Calendar.MONTH);
int mDay = c.get(Calendar.DAY_OF_MONTH);
DatePickerDialog dialog =
new DatePickerDialog(this, mDateSetListener, mYear, mMonth, mDay);
dialog.show();
您可以通过这种方式初始化您的选择器。 fork