私のアプリケーションでは、ユーザーが複数の行に影響を与える情報を変更できます。ユーザーはこれらのうちいくつかを変更できますが、ユーザーが保存を選択した場合(変更を破棄することができる場合)、データベースに変更を適用したいだけです。 私はこれにいくつか問題があります。Android:Sqliteは、ユーザーが保存した後にデータベースに挿入する
今、私はvalues.putを使用して、db.insertをsave onClickListenerで呼び出しようとしていますが、ユーザーが複数の行を変更した場合、これはユーザーが最後に行った変更のみを反映します。 (行は名前、日付、spinnerGeneral、spinnerSprint、timeSprint、spinnerRest、timeRestで構成されています)これをどうすれば処理できますか?値の配列は、それぞれの1つの挿入を呼び出しますか?
これは私もちょうどユーザが最初の行を変更したときdb.insert()を呼び出し、そして配列にROW_IDの保存についてROWID []、およびユーザ場合考え今
values.put("name", workoutName);
values.put("date",datewo);
values.put("spinnerGeneral", data.get(1).getSpinnerGeneral());
values.put("spinnerSprint", data.get(1).getSpinnerSprint());
values.put("timeSprint", data.get(1).getTimeSprint());
values.put("spinnerRest", data.get(1).getSpinnerRest());
values.put("timeRest", data.get(1).getTimeRest());
[....]
@Override
public boolean onOptionsItemSelected(MenuItem item) {
saveData=true;
int id = item.getItemId();
if (id == R.id.action_save){
long rowId = db.insert("workout",null,values);
onBackPressed();
}
私のコードであります変更を破棄することを決定し、私が持っているrow_IDですべての行を削除するだけです。これは可能ですか?それはちょうどDELETE * FROMワークアウトを使用していますか?Row_ID = rowID [1 ...]? Row_IDは自動的に生成される列の名前ですか?
は手始めに非常に