簡體   English   中英

AlertDialog.Builder 不顯示

[英]AlertDialog.Builder doesn't show

我目前正在開發一個 Android 應用程序,我想檢查從聯系人中挑選的聯系人是否已經存在於數據庫中(這意味着他已經是應用程序的用戶)以及是否存在將他添加到列表中。 我正在使用 Firebase 實時數據庫,我的問題是如果在數據庫中找不到用戶並且它沒有顯示,我正在嘗試顯示 AlertDialog。

我提到代碼有效:如果他存在於數據庫中,則將聯系人添加到列表中,如果不存在,則不添加聯系人,但我的 AlertDialog 未顯示。

這是我到目前為止所嘗試的:

users_table.orderByChild("phoneNumber").equalTo(phoneNumber).addListenerForSingleValueEvent(new ValueEventListener() {
                        @Override
                        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
                            for(DataSnapshot data : dataSnapshot.getChildren()){
                                if(data.exists()){
                                    participantsList.add(user);
                                    adapter.notifyDataSetChanged();
                                }else if(!data.exists()){

                                 new AlertDialog.Builder(AddParticipants_Fragmnet.this.getContext())
                                            .setMessage(name + " is not a member of our app")
                                            .setTitle("Warning")
                                            .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                                                @Override
                                                public void onClick(DialogInterface dialog, int which) {
                                                    dialog.dismiss();
                                                }
                                            }).show();


                                }
                            }
                        }

                        @Override
                        public void onCancelled(@NonNull DatabaseError databaseError) { }});

我認為你應該創建一個 AlertDialog.Builder,用你想要的構建它; 然后在調用 show() 之前調用 create()。 可能看起來像這樣:


AlertDialog.Builder builder = new AlertDialog.Builder(AddParticipants_Fragmnet.this.getContext());
builder.setMessage(name + " is not a member of our app")
builder.setTitle("Warning")
builder.setPositiveButton("Ok", 
         new DialogInterface.OnClickListener() {
             @Override
             public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
             }
         });
AlertDialog mdialog = builder.create();
mdialog.show();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM