不从数据库快照Firebase android返回子计数

时间:2017-04-12 13:43:50

标签: android firebase firebase-realtime-database

 searchbut.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (id==valid)
                {
                    Toast toast = Toast.makeText(getjcard.this,"Invalid ID ", Toast.LENGTH_LONG);
                    toast.setGravity(Gravity.CENTER, 0, 0);
                    toast.show();
                return;
           }
           else
            {
                jcid=id;
            }

            FirebaseDatabase database = FirebaseDatabase.getInstance();
            DatabaseReference reference = FirebaseDatabase.getInstance().getReference();
            Query query = reference.child("maindata").orderByChild("Registration No").equalTo(jcid);
            foundjc=0;
            query.addListenerForSingleValueEvent(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    if (dataSnapshot.exists()) {
                         dataSnapshot.getChildren()) {
                        foundjc= (int) dataSnapshot.getChildrenCount();

                        if (foundjc>0)
                        {  Toast toast = 
                             Toast.makeText(getjcard.this,"Records Found  "+ foundjc, 
                              Toast.LENGTH_LONG);
                            toast.setGravity(Gravity.CENTER, 0, 0);
                            toast.show();}
                        else
                        {  Toast toast = Toast.makeText(getjcard.this,"no data found", Toast.LENGTH_LONG);
                            toast.setGravity(Gravity.CENTER, 0, 0);
                            toast.show();}
                    }
                }
                @Override
                public void onCancelled(DatabaseError databaseError) {
                }
            });


        }
    });

在上面的代码的帮助下,试图通过按钮上的onclick监听器获取具有特定id jcid的记录数量但是当数据库中存在Record时它返回找到的数据 但是当数据库

中没有记录时它没有任何作用

数据结构       {

  "maindata" : [ {

"Applicant Name" : "राजेन्‍द्र राम",
"Applicant No" : "1",
"Bank Code" : "112",
   "Block Name" : "BHAISIACHHANA",
"Branch Code" : "623",
"Branch Name" : "baadecheena",
"District Name" : "ALMORA",
   "Name of Primary Account Holder" : "Rajendra Ram",
"Panchayat Name" : "ALISUPYAL",
"Registration No" : "UT-07-008-001-001/103",
"Sno" : "1",
"State Name" : "UTTARAKHAND"
  }, {
 "Applicant Name" : "पार्वती देवी",
"Applicant No" : "1",
"Bank Code" : "112",
   "Block Name" : "BHAISIACHHANA",
"Branch Code" : "623",
"Branch Name" : "baadecheena",
"District Name" : "ALMORA",
 "Name of Primary Account Holder" : "PARWATI DEVI",
"Panchayat Name" : "ALISUPYAL",
"Registration No" : "UT-07-008-001-001/121",
"Sno" : "2",
"State Name" : "UTTARAKHAND"
  }]
  }

0 个答案:

没有答案