我遇到了我的应用程序问题。我正在尝试做一些事情来阻止用户选择已经过去的日期和时间。如果用户选择日期和过去的时间,则会显示错误消息。用户将从datePicker和timePicker中选择日期和时间。任何人有任何想法做到这一点?任何帮助将不胜感激。非常感谢!如何防止用户设置当前日期和时间之前的日期和时间
3
A
回答
1
如果你设定的EditText捡拾值,你可以这样做:
Calendar cal = Calendar.getInstance();
cal.set(cal.get(Calendar.YEAR),
cal.get(Calendar.MONTH),
cal.get(Calendar.DAY_OF_MONTH));
DateFormat df = new SimpleDateFormat(
"dd/MM/yyyy");
Date day_entered, day_valid;
day_entered = df.parse(your_date_edittext.getText()
.toString());
day_valid = df.parse(df.format(cal.getTime()));
if (day_entered.after(day_valid)) {
Toast msg = Toast
.makeText(
Profile.this,
"Please Enter a valid date",
Toast.LENGTH_LONG);
msg.show();
}
2
您可以防止用户通过广播reciever ACTION_TIME_CHANGED更改日期时间。如果用户改变日期时间,则广播接收者将被呼叫。覆盖广播接收器中的onRecieve方法。请确保清单文件
@Override
public void onReceive(Context context, Intent intent) {
// You can put conditions the changed date time is not past from the current time and show toast message.
}
+0
我真的需要类似这样的东西......我在想它是否有效 –
+0
您是否尝试过?如果你尝试过,那么它肯定会起作用 –
+0
是的,它像一个魅力。很优雅的解决方案 –
0
if(fromdate!=null && fromdate.length()>0 && todate!=null && todate.length()>0)
{
try
{
sdf = new SimpleDateFormat("yyyy-mm-dd");
date1 = sdf.parse(fromdate);
date2 = sdf.parse(todate);
Calendar cal = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal.setTime(date1);
cal2.setTime(date2);
if(cal.after(cal2)){
System.out.println("Date1 is after Date2");
// Toast.makeText(getApplicationContext(), "from Date1 is after Date2", Toast.LENGTH_SHORT).show();
// clear the dates here........
}
}
catch(Exception e)
{
Log.d("pavan","in exception block ");
}
}
相关问题
- 1. 当前时间和日期
- 2. 日期和当前时间的时差?
- 3. MySQL日期时间和当前日期时间函数
- 4. 任何时区的当前日期和时间(“墙”日期和时间)
- 5. 如何计算当前日期和结束日期之间的时间(安卓)
- 6. 取得之前的日期和时间
- 7. 如何从当前日期时间扣除时间/日期
- 8. Android当前日期和时间
- 9. Mysql/Php - 当前日期和时间
- 10. Erlang和当前日期时间
- 11. XSLT:以当前日期和时间
- 12. 当前系统日期和时间
- 13. 获取当前日期和时间
- 14. 打印当前日期和时间C#
- 15. 比较当前日期和时间iOS
- 16. 获得当前日期和时间
- 17. SWRL和当前日期时间
- 18. 如何自动获取当前日期和时间到日期时间字段
- 19. 如何在DatePickerDialog上的当前日期和前7天之间启用日期?
- 20. 如何MySQL的两个日期之和与当前时间戳
- 21. 导出数据日期和时间点到当前日期和时间
- 22. 在android中比较输入日期和时间与当前日期和时间
- 23. 在GWT中添加日期和时间到当前日期和时间
- 24. 如何获取当地时区的当前日期和时间?
- 25. 比较日期时间到MySQL中的当前日期时间?
- 26. 填写当前日期和时间的日期列?
- 27. MongoDB的更新与当前日期和时间日期
- 28. 如何检查当前日期/时间是否超过设定日期/时间?
- 29. Cordova:Android设备当前日期/时间
- 30. 的onclick当前日期和时间的日期时间,本地输入
嗨,哎你怎么通过设置的EditText机械臂值的意思来定义广播reciever?我直接从拾取器中设置值。 – CallMyName
你是否设置了从picker获取的值,如edittext,textview或其他东西? –
哦,是的,我将采样器的值传递给textview。 – CallMyName