[英]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.