我正在构建生日猜谜游戏,该游戏接受来自DatePickerDialog框的用户输入日期,该框在用户触摸textView框时弹出。唯一的问题是允许的最小日期是1900年的第一天。我需要能够访问1700年的日期。有没有办法调整DatePickerDialog中显示的最小日期。
这是我在main.java文件中的内容
//Date Bar initial display (will display current date)
mDisplayDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Calendar cal = Calendar.getInstance();
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH);
int day = cal.get(Calendar.DAY_OF_MONTH);
DatePickerDialog dialog = new DatePickerDialog(GuessMaster.this,
android.R.style.Theme_Holo_Light_Dialog_MinWidth,
mDateSetListener, year, month, day);
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
dialog.show();
}
});
//Date Bar Input Listener
mDateSetListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
month+=1;// now will treat january as 1 instead of 0
String date = month+"/"+dayOfMonth+"/"+year;
mDisplayDate.setText(date);
Log.d(TAG, "onDateSet:"+year+"/"+month+"/"+dayOfMonth);
}
谢谢
答案 0 :(得分:-1)
请尝试以下操作:
dialog.getDatePicker().updateDate(year,month,day);