2017-07-10 4 views
0

私は子供のコードの下のすべてのデータを検索するクエリを実行しようとしていますが、肯定的な結果がある場合はもお勧めします私はHUIYIUを照会していた場合、その値が入っている子の名前を知っている。例えばAndroidのfirebaseが文字列を検索し、それがある子の子の名前を取得する

enter image description here

Button bt = (Button)findViewById(R.id.button); 
     bt.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 
       EditText input = (EditText) findViewById(R.id.editText); 
       String string = input.getText().toString(); 
       Firebase rootRef = new Firebase("https://akiba-c9600.firebaseio.com/codes"); 
       Query queryRef = rootRef.orderByKey().equalTo(String.valueOf(input)); 
      } 
     }); 

を私はそれが20mgを子の下にあることを知っていただきたいと思います。私はこれをどのように達成するのですか?その後、

Query queryRef = rootRef.orderByKey().equalTo(string); 

答えて

0

変更

Query queryRef = rootRef.orderByKey().equalTo(String.valueOf(input)); 

queryRef.addValueEventListener(new ValueEventListener() { 
      @Override 
      public void onDataChange(DataSnapshot dataSnapshot) { 
        // here you will get searched data 
      } 
     } 
+0

感謝..私は、その値が格納されている下の子の名前をしたいです。あなたが構造を知っていれば、あなたは気にしないでください。 –

+0

あなたは子供の名前を得ることができますeasy.https://stackoverflow.com/questions/41951877/how-to-search-data-in-firebase –

+0

ちょっと質問のリンクは役に立たないmuch..how私はちょうど質問された値の子の名前を取得する –

0

を実装し、このコードを使用してください:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); 
DatabaseReference codesRef = rootRef.child("codes"); 
ValueEventListener eventListener = new ValueEventListener() { 
    @Override 
    public void onDataChange(DataSnapshot dataSnapshot) { 
     if(dataSnapshot.child("aa 20mg").child("HUIYIU").exists()) { //Check if exists 
      String HUIYIU = dataSnapshot.child("aa 20mg").child("HUIYIU").getValue(String.class); 
      String HUTERT = dataSnapshot.child("aa 20mg").child("HUTERT").getValue(String.class); 
      Log.d("TAG", HUIYIU + "/" + HUTERT); 
     } 
    } 

    @Override 
    public void onCancelled(DatabaseError databaseError) {} 
}; 
codesRef.addListenerForSingleValueEvent(eventListener); 

そして、あなたの出力は次のようになりますので、多くが、質問はまだ保留されている

10/10 
関連する問題