Android DatePickerDialog 上的最大日期
我需要在我正在使用的 DatePickerDialog 上设置最大年份,但我找不到任何这样做的机制。文档提到 getDatePicker () 作为 DatePickerDialog 的公共方法。所以,我想,也许,这可以用来获取 DatePicker,然后我可以设置最大日期,但当我尝试获取 DatePicker 时,我收到“方法未定义”错误。
这就是我试图在 onCreateDialog 中获取 DatePicker 的方法。
DatePickerDialog d = new DatePickerDialog(this, dep_dateListener, mYear,
mMonth, mDay);
DatePicker dp = d.getDatePicker();
dp.setMaxDate(maxDate);
return d;
有关如何执行此操作的任何指示?
谢谢
I need to set a max year on the DatePickerDialog that I am using but I am unable to find any mechanism of doing that. The documentation mentions getDatePicker () as a public method of the DatePickerDialog. So, I thought, perhaps, that can be used to get the DatePicker and then I could set the max date but I get "Method undefined" error when I try to get the DatePicker.
This is how I am trying to get the DatePicker inside my onCreateDialog.
DatePickerDialog d = new DatePickerDialog(this, dep_dateListener, mYear,
mMonth, mDay);
DatePicker dp = d.getDatePicker();
dp.setMaxDate(maxDate);
return d;
Any pointers on how to do this?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
getDatePicker() 方法在 API 级别 11 中可用。
The getDatePicker() method is available in API Level 11.
要使 DatePickerDialog 的子类
重写 onDateChanged 方法,
请参阅
to make a subclass of DatePickerDialog
override onDateChanged method
see the source code
setMaxDate()
仅对新 API 有用,但如果您希望应用程序能够与早期版本一起使用,那么您必须创建自己的日期比较器。例如,我只是使用
Calendar.getInstance()
并使用方法Date.before(Date)
ORDate.after(Date)
获取本地日期code> 您可以为DatePicker
添加限制。setMaxDate()
is only useful for new APIs but if you want your application to work with earlier versions then you have to make your own comparator for dates.For example I just get the local date using
Calendar.getInstance()
and using the methodDate.before(Date)
ORDate.after(Date)
you can add restrictions forDatePicker
.monodroid 中更好的实现:
A better implementation in monodroid: