2017-03-22 16 views
0

何らかの理由で私の子供の値を受け取ることができず、理由を理解できません。各値は2倍で表されます。Firebaseがキー値を受け取っていないSwift

は、すべてのキーが整数である場合

if let snapDict = snap.value as? [Double:AnyObject]{ 

enter image description here

func recieveChartValues() { 

    //Firebase Initialization 
    var ref: FIRDatabaseReference! 
    ref = FIRDatabase.database().reference() 

    ref.child("general_room_index").observeSingleEvent(of: .value, with: {(snap) in 


     if let snapDict = snap.value as? [Double:AnyObject]{ 


      for each in snapDict{ 

       print("key ", each.key) 
       self.values.append(each.key) 
      } 
     } 
    }) 

}//retrive values func 
+0

問題点は何ですか?あなたのスナップは価値があるかどうか? – rv7284

+0

値なし。私のスナップは値を全く印刷していません。 – codechicksrock

+0

let snapDict = snap.valueをletとすると決して過去にならない? [Double:AnyObject] { – codechicksrock

答えて

1

を過ぎてそれを作る、としない、より0とオブジェクト内の最大のキーの間のキーの半分以上空ではない値を持つ場合、Firebaseはそれを配列としてレンダリングします。

だから私はfirebaseが自動インクリメントと信じているとして順次キーは、多くの場合、アレイにして変換するので、あなたが常にintではなくキーとして、いくつかの文字列を使用することを信じて...

詳細情報。チェックthis answer

+0

今私は各キーのための値がないと言ってエラーが出る – codechicksrock

+0

これは、 'print(snap.value)' ..もしそれが私にすべての値を与える –

+0

の結果を教えてください1114、 1114、 1114、 ) ) – codechicksrock

関連する問題