【问题标题】:xamarin android DatePickerDialog set mini datexamarin android DatePickerDialog 设置迷你日期
【发布时间】:2016-06-16 15:27:59
【问题描述】:
我正在使用 DatePickerDialog,我想隐藏今天之前的每个日期。
我可以使用此代码隐藏上个月和上年:
dialog.DatePicker.MinDate = new Java.Util.Date().Time - 1000;
但它并没有像我想要的那样工作。从 6 月 1 日到今天之间的日子被禁用(灰色),但我们仍然可以单击它们并通过单击肯定按钮来关闭对话框。
有人有真正禁用他们的解决方案吗?或者至少避免关闭对话框?
【问题讨论】:
标签:
android
xamarin
datepickerdialog
【解决方案1】:
您需要为 MinDate 提供您的最短日期(在您的情况下为今天)与 1970 年 1 月 1 日之间的毫秒数,因此:
dialog.DatePicker.MinDate = (long)(DateTime.Today.Date - new DateTime(1970, 1, 1)).TotalMilliseconds;
这应该会阻止用户选择任何更早的日期。
【解决方案2】:
现在尝试更改思维导图?
dateTimePicker1.MinDate = DateTime.Now;
类似的东西应该可以。 :)
【解决方案3】:
//for lesser than today
dialog.DatePicker.MinDate = Java.Lang.JavaSystem.CurrentTimeMillis();
//for greater than today
dialog.DatePicker.MaxDate = Java.Lang.JavaSystem.CurrentTimeMillis();
这解决了我的问题:)