邓富贵儿1996 2016-05-16 17:36 采纳率: 0%
浏览 3866

android listview 删除item同时删除对应行数的数据库内容

  listView.setOnItemClickListener(new AdapterView.OnItemClickListener()
        {
            @Override
            public void onItemClick(AdapterView<?>parent,View view,int position,long id)
            {
                Map<String, Object> positioncurrent = list.get(position);
                comment.setId(Integer.parseInt(String.valueOf(positioncurrent)));
                int _id = comment.getId();
                SQLiteDatabase db = databaseHelper.getWritableDatabase();
                db.delete("comment",Comment.Commentinter.EVENT_ID + getString(R.string.dlx_wenhao),new String[]{String.valueOf(id)});
                db.close();
                list.remove(positioncurrent);
                adapter.notifyDataSetChanged();
                listView.setAdapter(adapter);
            }
        });
    }

我完全新手,这是我写的监听事件,Comment类里是我数据库表属性的setget方法,逻辑上不知道对不对,只是现在它报错, java.lang.ClassCastException: java.util.HashMap cannot be cast to com.example.dengfugui.myapplication.Comment,不让我把positioncurrent进行类型转换,我应该怎么修改?或者基于我的 Map和Comment有没有啥更好的方法?求大神指点!!!!谢谢了!!!

  • 写回答

5条回答 默认 最新

  • devmiao 2016-05-16 22:57
    关注
     Map<String, Object> positioncurrent = list.get(position);
    ->
     com.example.dengfugui.myapplication.Comment positioncurrent = list.get(position);
    
    评论

报告相同问题?