-1

我很难通过 onitemlongclick 删除,我是 android 新手,所以请放过我。

这是我的流程

  1. 从 sqlite 获取我的数据> *完成
  2. 设置 onitemlongclick 监听器然后弹出删除对话框 *完成
  3. 获取行 'id' 并将其从 sqlite 中删除。 *尚未完成

假设我有这张桌子

 tableuser


 uniqid  | name | username
     2d1 | e    | e1
     cc2 | d    | d1
     2cd | c    | c1

到目前为止我得到的是

public void list() {
        // progressDialog.dismiss();
        dataAdapter = new MyCustomAdapter(this, R.layout.newrecord_item,
                accompList);

        // Assign adapter to ListView
        listView.setAdapter(dataAdapter);

    } 

public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
                    final int arg2, long arg3) {
                // TODO Auto-generated method stub


                alertDialog = new AlertDialog.Builder(NewRecords.this).create();
                alertDialog.setTitle("Delete Record");
                alertDialog.setMessage("Delete Employee Record?");
                alertDialog.setButton("YES",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                // TODO Auto-generated method stub
                                dataAdapter.getItem(arg2);


                            }
                        });
                alertDialog.setButton2("NO",
                        new DialogInterface.OnClickListener() {

                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                // TODO Auto-generated method stub

                            }
                        });
                alertDialog.show();
                return false;
            }

我需要知道如何在 android 上执行删除

4

1 回答 1

1

在 getView() 中进行更改:

对于您返回的每个视图,为视图设置标签。标记应该是您在上表中所述的唯一 ID。

view.setTag(uniqueId[position]);

return view;

位置是在 getView() 中收到的整数值。

当用户点击列表项时,您可以获得点击的视图。从视图中获取标签。

Integer uniqueId = Integer.valueOf(String.valueOf(view.getTag()));

然后,使用这个 uniqueId 整数值,编写删除 sql 查询并传递这个唯一 ID,这样具有这个唯一 ID 的行应该被删除。

并提交数据库更改。

于 2013-09-05T11:03:12.157 回答