Во-первых, в моей ситуации нет ошибки, но любой ответ, когда я касаюсь контекстного меню «delete». Кажется, что компьютер остается не читаемым.Есть ответ во время получения данных из базы данных SQLite
getAmount Calss из DBHelper.java
public int getAmount(Integer id){
int amount = 0;
SQLiteDatabase db=this.getReadableDatabase();
Cursor res = db.rawQuery("SELECT id, amount FROM uselist WHERE id="+id,null);
amount=res.getInt(res.getColumnIndex(USELIST_COLUMN_AMOUNT));
return amount;
}
Код выше getAmount использовали
@Override
public boolean onContextItemSelected(MenuItem item){
int itemId = item.getItemId();
switch (itemId){
case R.id.context_item1 :
Toast.makeText(this,"edit",Toast.LENGTH_SHORT).show();
return true;
case R.id.context_item2 :
int amt=-mydb.getAmount(position);
Toast.makeText(this,"delete",Toast.LENGTH_SHORT).show();
mydb.deleteUseList(position);
mydb.update("UPDATE uselist SET id = (id-1) WHERE id >"+ position+";");
mydb.update("UPATE uselist SET balance = (balance+"+amt+") WHERE id>"+position+";");
histories.clear(); //
finish();
startActivity(getIntent());
return true;
}
return super.onContextItemSelected(item);
}
Я думаю, что-то не так в 'Int АМТ = -mydb.getAmount (положение);' код или getAmount класс, так как удалить Toast не появляется.
Почему вы использовали '-mydb' вместо' MyDB»?? – Jas
@ Удалите, затем оставайтесь той же проблемой. Значок минус необходим для моей цели. – Jiwon
@ Jiwon нужна определенная ясность по вашему вопросу. –