0
プログラムで更新するときに、ユーザーがデータピッカーを使用してeditTextボックス(日付用と時間用)に日付を再入力しないと、更新プログラムは古いものの代わりに現在の日付をdbに挿入します。私は古い時間を保つためにどのようにそれを得るだろうか?デシベルandroid dbを更新するときに古い日時を保持する方法は?
newTime.year = dateAndTime.get(Calendar.YEAR);
newTime.month = dateAndTime.get(Calendar.MONTH);
newTime.monthDay = dateAndTime.get(Calendar.DAY_OF_MONTH);
newTime.hour = dateAndTime.get(Calendar.HOUR_OF_DAY);
newTime.minute = dateAndTime.get(Calendar.MINUTE);
enteredTime = (int) ((newTime).toMillis(true)/1000);
に入るintをここで私がint日付と時刻を入力するために使用されるコードは、ここでのEditTextが
public void date(View v) {
int inType = date.getInputType(); // backup the input type
date.setInputType(InputType.TYPE_NULL); // disable soft input
date.setInputType(inType);
new DatePickerDialog(report.this, d, dateAndTime.get(Calendar.YEAR),
dateAndTime.get(Calendar.MONTH),
dateAndTime.get(Calendar.DAY_OF_MONTH)).show();
}
public void time(View v) {
int inType = time.getInputType(); // backup the input type
time.setInputType(InputType.TYPE_NULL); // disable soft input
time.setInputType(inType);
new TimePickerDialog(report.this, t,
dateAndTime.get(Calendar.HOUR_OF_DAY),
dateAndTime.get(Calendar.MINUTE), true).show();
}
private void updateLabel() {
date.setText(fmtDate.format(dateAndTime.getTime()));
}
private void updateLabel1() {
time.setText(fmtTime.format(dateAndTime.getTime()));
}
DatePickerDialog.OnDateSetListener d = new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
dateAndTime.set(Calendar.YEAR, year);
dateAndTime.set(Calendar.MONTH, monthOfYear);
dateAndTime.set(Calendar.DAY_OF_MONTH, dayOfMonth);
updateLabel();
}
};
TimePickerDialog.OnTimeSetListener t = new TimePickerDialog.OnTimeSetListener() {
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
dateAndTime.set(Calendar.HOUR_OF_DAY, hourOfDay);
dateAndTime.set(Calendar.MINUTE, minute);
updateLabel1();
}
};
:
たりしたい形式を取得するたDateFormatterを使用:あなたはミリ秒単位の時間(dateMillis)を持っている場合あなたがカレンダーを作成することができます。ユーザーがデータと時間を選択すると、そのデータがdbに入力されます。後で同じ画面に進み、画面上の情報を更新しますが、日付は更新しません。 dbは古い情報を保持するはずですが、上記のコードは現在の日付を入力し続けます。これはより良い説明ですか? – Aaron
私はdateAndTimeがCalendarであると推測しています。dateAndTime.setTime(new Date(millis))で日付を設定できます。投稿したコードは古い日付を返します。 それはそれではない場合、私はあなたのコードをより多くの質問を投稿する必要があると思います。 – Heinrisch
editTextsをクリックしたときの日付と時刻の取得方法のコードを追加しました。 – Aaron