Java Android使用数据过期选择器
我想从我的日期选择器那里得到日期/月/年。我有一个问题,就是一个月一天永远都不正确。我给你下面的代码。月份是正确的,但当月份为12月时失败。这一天永远不正确Java Android使用数据过期选择器,java,android,Java,Android,我想从我的日期选择器那里得到日期/月/年。我有一个问题,就是一个月一天永远都不正确。我给你下面的代码。月份是正确的,但当月份为12月时失败。这一天永远不正确 public class myOnDateChangedListener implements OnDateChangedListener { public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayO
public class myOnDateChangedListener implements OnDateChangedListener {
public void onDateChanged(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
if (view.getId() == R.id.datePicker1) {
startDay = view.getDayOfMonth();
if(view.getMonth() == 11){
startMonth = 12;
}else{
startMonth = (view.getMonth() + 1);
}
startYear = view.getYear();
}
if (view.getId() == R.id.datePicker2) {
endDay = view.getDayOfMonth();
if(view.getMonth() == 11){
endMonth = 12;
}else{
endMonth = (view.getMonth() + 1);
}
endYear = view.getYear();
}
}
}
为什么使用视图值,而不是方法中传递的值?也不需要月==11的特殊情况。尝试此代码(您自己修改): 编辑:在阅读了您的评论之后,我觉得您遇到的问题可能是因为您方面的其他一些困惑:我的意思是,Java Date类构造函数如下所示:
初始化从1900年1月1日开始的日期。警告:月份介于0和11之间,日期介于1和31之间。看看构造函数。如果要检测问题是在DatePicker本身中还是在Java代码中,请尝试记录日志以缩小原因的范围。您能确切说明问题是什么吗?当您选择十二月时,应用程序会崩溃吗?或者如果它返回了错误的值,那么它返回的值是多少?当您选择十二月时,它会将mysql数据库中的月份设置为00,并且日期也不正确。
public void onDateChanged(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
if (view.getId() == R.id.datePicker1) {
startDay = dayOfMonth;
startMonth = monthOfYear + 1;
startYear = year;
}
if (view.getId() == R.id.datePicker2) {
endDay = dayOfMonth;
endMonth = monthOfYear + 1;
endYear = year;
}
}
public Date(int year, int month, int date)