繁体   English   中英

如何在警报对话框中添加.get(位置)

[英]How to add .get(position) in alert dialog box

我正在使用实时数据库,我想获取所选回收站视图项的 position 并将其删除,唯一的问题是这部分“String id = list.get(position).getId();” 我似乎无法获得所选项目的 position。

错误:“无法解析符号‘位置’”。

我的对话代码:

    private void showDialog() {
    AlertDialog alertDialog = new AlertDialog.Builder(upcoming.this).create();
    alertDialog.setTitle("Confirm Delete");
    alertDialog.setMessage("Are you sure ypu want to delete this item?");

    alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "Delete", new DialogInterface.OnClickListener() {

        public void onClick(DialogInterface dialog, int which) {
            String id = list.get(position).getId();
    Query queryRef = database.child("Reminder").orderByChild("id").equalTo(id);

            queryRef.addChildEventListener(new ChildEventListener() {
                @Override
                public void onChildAdded(DataSnapshot snapshot, String previousChild) {
                    snapshot.getRef().setValue(null);
                }

您已将onClick声明为:

public void onClick(DialogInterface dialog, int which) {

如果我们查看DialogInterface.OnClickListener ,我们会看到which在:

which int :被点击的按钮(例如DialogInterface#BUTTON_POSITIVE )或被点击项目的 position

因此,被点击项目的 position 在which参数中可用,这意味着您可以将其用于:

String id = list.get(which).getId();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM