2016-05-02 5 views
0

Ist es möglich, Firebase-Daten in den UIPickerView zu laden? Dies ist, was ich habe und es funktioniert, aber ich möchte einen bestimmten Firebase-Snapshot-Wert in den Picker laden, anstatt "0", "1", "2" anzuzeigen.Abrufen von Firebase-Daten in UIPickerView

if ([self.view.restorationIdentifier isEqualToString:@"picker_id"]){ 
     if ([Settings integerForKey:@"type"] == 4) { 
      { 
       // Database 
       Firebase *ref = [[Firebase alloc] initWithUrl: @"https://firebaseio.com/example"]; 

       // Read data and react to changes 
       [ref observeEventType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot) { 

       }]; 

      } 

      pickerDistanceData = @[@"0", 
            @"1", 
            @"2", 
            @"3"]; 

    } 
    } 

Muss ich den snapshot.value auf einen bestimmten Index im Picker einstellen?

+0

Bitte geben Sie mehr Einblick darüber, was Sie erreichen möchten (d. H. Was macht die Picker-Ansicht?). Dies scheint generisch zu sein und es ist schwer, Ihnen eine konkrete Antwort zu geben. Wie sind Ihre Daten strukturiert? Wie speichern Sie es in Firebase? Sie können jede Art von Wert anzeigen, der in Firebase gespeichert werden kann, Sie müssen ihn jedoch beim Speichern korrekt strukturieren. – swiftcode

+0

Ich habe Textzeichenfolgen in Firebase, die ich einzeln in das Array geladen werden soll anstelle meines Beispiels, wie ich "0", "1", "2", "3" habe .... Die Picker-Ansicht erlaubt dem Benutzer nur zu Wählen Sie ein Element aus der Liste, aber ich möchte, dass diese Elemente Werte sind, die derzeit in meinem Firebase gespeichert sind. Ich versuche nicht, irgendetwas in Firebase zu speichern, die Strings sind bereits auf Firebase, ich möchte nur, dass sie auf dem Picker-View-Array geladen sind. Meine Frage ist also, wie ich mein 'pickerDistanceData'-Array so strukturieren kann, dass es den Firebase-String laden kann. @wreckingcode –

+0

Wenn die Zeichenfolgen bereits in Firebase sind, einfach [fragen Sie sie ab] (https://www.firebase.com/docs/ios/guide/retrieving-data.html#section-queries) und Sie können sie in Ihre einfügen 'pickerDistanceData' Array. – swiftcode

Antwort

2
NSDictionary *object=[snapshot.value objectForKey:@"Your Key"]; 

id [email protected]; 

for(var in object) 
{ 

//put data to your pickerDistanceData 

}