CursorAdapter通过Cursor获取id

时间:2015-05-21 20:08:48

标签: android android-cursoradapter

我正在尝试在CursorAdapter中的bindView中通过Cursor获取id。 我写道:

 public void bindView(View v,Context context2,Cursor cursor) {
 super.bindView(v, context, cursor);
 long id3= cursor.getLong(cursor.getColumnIndex("_id"));
   . . . .
 }

然后我打电话给deleteOne:

     delete.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
        mySQLiteAdapter.deleteOne(id3);
      }
 });

方法:

   public boolean deleteOne(long id) {
   return sqLiteDatabase.delete(TABLE_NAME, "_id=" + id, null) > 0;
   }

我没有得到任何错误,但总是当我点击任意行中的删除时,最后一行(记录,视图)被删除了。

谢谢你,对我的语法感到抱歉。

1 个答案:

答案 0 :(得分:0)

在哪里设置id3?在视图的标签?因为我不知道你可以在哪里获得 id3 。如果你不把它放在 view.setTag()然后在onClick retreivin那么那就是问题 - 你将永远有最后 id3这就是为什么你删除最后一行。 另外,我在onClick ...

上看不到任何notifyDatasetChange()