无法使用SQLite数据库游标检索corret int

时间:2019-07-13 17:30:39

标签: java android sqlite int android-cursor

所以我试图处理一个SQLite数据库,但是completley不是我的专业领域,我已经把光标弄乱了。

我正在做的是创建一个包含包含int值的项目的列表。 每次添加项目时,其int都会累加到总计。

现在,当我要删除一项并执行合计操作-int时,我也无法获取正确的项的int并从其他项中减去一些随机值到总数中。

我很确定这取决于光标。 这是代码:

  @Override
public void onBindViewHolder(@NonNull Adapter.Holder holder, int position) {
    if (!cursor.moveToPosition(position)) {
        return;
    }


    long id = cursor.getLong(cursor.getColumnIndex(COLUMN_ID));

    holder.itemView.setTag(id);

    delete.setOnClickListener(v -> removeItem((Long) holder.itemView.getTag()));


}

 private void removeItem(long id) {
    int totaltime = sharedPreferences.getInt("Total", 0);
    int time_to_subtract = cursor.getInt(cursor.getColumnIndex(TimeHandler.TimeDB.COLUMN_MOUNT));


    int timeremoved = totaltime - time_to_subtract;
    SharedPreferences.Editor editor = sharedPreferences.edit();


    editor.putInt("Total", timeremoved);
    editor.apply();

    Toast.makeText(mContext, "Removed" + time_to_subtract + " from " + totaltime, Toast.LENGTH_LONG).show();

    TimeHandler = new TimeHandler(delete.getContext());
    mDatabase = TimeHandler.getWritableDatabase();
    mDatabase.delete(TABLE_TIME, COLUMN_ID + "==" + id, null);
    swapCursor(getItems());


}

感谢您的帮助

0 个答案:

没有答案