gpt4 book ai didi

android - DatePickerDialog +/- 按钮的监听器

转载 作者:行者123 更新时间:2023-11-29 21:03:16 31 4
gpt4 key购买 nike

我目前正在我的 Android 应用程序中使用 DatePickerDialog

众所周知,对话框有三个 EditText:1) 天 2) 月 3) 年。并且有 + 和 - 三个按钮可以移动到所选字段的前面和后面。我需要知道对话框中是否存在“+”和“-”按钮的监听器?

这是因为,在我的应用中,我不希望用户使用对话框选择当前日期之前的先前日期。所以如果点击“-”按钮,它应该检查对话框中的日期是否小于当前日期。所以我需要一个对话框的“-”按钮的监听器。

此外,我正在为从 Froyo 到 KitKat 的所有平台开发此应用程序。我听说 DatePicker 有一个 setMinDate()。但它只能从 HoneyComb 获得。

最佳答案

尝试覆盖 onDateChnaged() 函数,这里是例子:

DatePickerDialog mDatePickerDialog = new DatePickerDialog(this, mDateSetListener,mYear, mMonth, mDay){
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth){
// this function will call when user click on '+' or '-'. Apply validation here. you can call view.updateDate(mYear, mMonth, mDay); if u don't want to accept date that user trying to select by pressing +/-
final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);
/* this validation allow user to enter date less then current date */
if (year > mYear)
view.updateDate(mYear, mMonth, mDay);<p></p>

<pre><code> if (monthOfYear > mMonth && year == mYear)
view.updateDate(mYear, mMonth, mDay);

if (dayOfMonth > mDay && year == mYear && monthOfYear == mMonth)
view.updateDate(mYear, mMonth, mDay);
}
};
</code></pre>

<p>DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {
// Add your code here to handle selected date event by user</p>

}
};

关于android - DatePickerDialog +/- 按钮的监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25356356/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com