Android DatePicker:安装后,我的手机不会禁用以前的日期,但在模拟器上可以完美工作
我正在使用带有Android DatePicker:安装后,我的手机不会禁用以前的日期,但在模拟器上可以完美工作,android,android-datepicker,Android,Android Datepicker,我正在使用带有按钮的日期选择器从对话框中进行选择,然后将其显示在编辑文本上。此外,我正在基于当前日期禁用以前的日期 所以我在我的应用程序中有了这个onClick方法: @Override public void onClick(View v) { if (v == btnCalendar) { // Process to get Current Date final Calendar c = Calendar.getInstance();
按钮的日期选择器
从对话框
中进行选择,然后将其显示在编辑文本
上。此外,我正在基于当前日期禁用以前的日期
所以我在我的应用程序中有了这个onClick
方法:
@Override
public void onClick(View v) {
if (v == btnCalendar) {
// Process to get Current Date
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);
// Launch Date Picker Dialog
DatePickerDialog dpd = new DatePickerDialog(this,
new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
// Display Selected date in textbox
if (year < mYear)
view.updateDate(mYear,mMonth,mDay);
if (monthOfYear < mMonth && year == mYear)
view.updateDate(mYear,mMonth,mDay);
if (dayOfMonth < mDay && year == mYear && monthOfYear == mMonth)
view.updateDate(mYear,mMonth,mDay);
txtDate.setText(dayOfMonth + "-"
+ (monthOfYear + 1) + "-" + year);
}
}, mYear, mMonth, mDay);
dpd.show();
} }
@覆盖
公共void onClick(视图v){
如果(v==btnCalendar){
//获取当前日期的过程
最终日历c=Calendar.getInstance();
mYear=c.get(日历年);
mMonth=c.get(日历月);
mDay=c.get(日历,月的第天);
//启动日期选择器对话框
DatePickerDialog dpd=新的DatePickerDialog(此,
新建DatePickerDialog.OnDateSetListener(){
@凌驾
公共无效onDateSet(日期选择器视图,整数年,
int monthOfYear,int dayOfMonth){
//在文本框中显示所选日期
如果(年<年)
view.updateDate(mYear,mMonth,mDay);
如果(月日<月日<年==mYear)
view.updateDate(mYear,mMonth,mDay);
如果(月日<日和年==月日和月日==月日)
view.updateDate(mYear,mMonth,mDay);
txtDate.setText(dayOfMonth+“-”
+(一年+一年)+“-”+一年);
}
},mYear,Ammonth,mDay);
dpd.show();
} }
我的问题是,它在模拟器上工作得很好,但当我把它安装在手机上时,它就不工作了。我的意思是之前的日期没有被禁用。这是选择哪一个不应该发生对吗?我怎样才能解决这个问题?我使用的是安卓果冻豆4.4
提前感谢。在dpd.show()之前。
尝试dpd.getDatePicker().setMinDate(您在此的日期)
。如果这是您的要求之一,您还可以设置最长日期
希望这有帮助您可以在日期选择器上设置开始日期,如果您使用今天的日期,则过去的日期将无法访问,因此您可以帮助我设置它吗?我的日子不好过。谢谢你需要使用Calendar.getInstance().getTime(),才能每天都能看到今天你这个该死的家伙。这真是太棒了,在手机上效果很好。谢谢。当心。