Я использую следующий код. Когда я нажимаю editText, он показывает календарь и устанавливает дату.Неправильная дата установки в android
private DatePickerDialog.OnDateSetListener mDateSetListener =
new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;
updateDisplay();
}
};
private void updateDisplay()
{
int cmpYear ;
int cmpMonth ;
int cmpDay;
final Calendar c = Calendar.getInstance();
cmpYear = c.get(Calendar.YEAR);
cmpMonth = c.get(Calendar.MONTH);
cmpDay = c.get(Calendar.DAY_OF_MONTH);
if (cmpMonth == mMonth && cmpYear == mYear && cmpDay == mDay)
date.setText("Today");
else if (cmpMonth == mMonth && cmpYear == mYear && cmpDay == (mDay - 1))
date.setText("Yesterday");
else
{
date.setText(
new StringBuilder()
// Month is 0 based so add 1
.append(mDay).append("-")
.append(mMonth + 1).append("-")
.append(mYear).append(" "));
}
java.util.Date today = new java.util.Date();
long t = today.getTime();
java.sql.Date dt = new java.sql.Date(t);
dt.setYear(mYear);
dt.setMonth(mMonth);
dt.setDate(mDay);
transaction.transactionDateTime = dt;
}
// ВОТ ПРОБЛЕМА, mYear, mMonth, MDAY показывает правильные значения 1,3,2012 но когда я поставил их здесь в дт, дт сохраняет mYear в 3079 не 2012. Пожалуйста, скажите мне, как могу ли я исправить эту дату проблему
Best Regards
я извиняюсь, это дает 3912 :) я не помню: D –