2017-02-26 3 views
1

Ich habe 2 Picker, der Benutzer setzt ihre gewünschten Int auf ihnen und speichert dann das Objekt zu Kerndaten.Setzen Picker auf Standard CoreData-Wert?

Später, wenn sie das Objekt bearbeiten möchten, laden sie ihre Daten erneut in den Editor.

ich ein Problem habe, wo die Pflücker nicht die int zurück von Kerndaten ziehen können und die Standard sich auf diesen Wert, sie standardmäßig immer auf ‚0‘

Gibt es eine Methode, um die Pflücker Standard auf die gewünschte machen Int in dem Objekt gespeichert, das sie bearbeiten?

Ich habe folgende Delegatmethoden anstelle:

repsPicker.dataSource = self 
    repsPicker.delegate = self 
    setsPicker.dataSource = self 
    setsPicker.delegate = self 

ich dann versuchen, die Eigenschaften von dem Objekt zu nehmen und sie auf die Pflücker gelten jedoch im, Nummer? anstelle von wo id annehmen ich brauche Code ot stellen die Standardwerte der Picker zugreifen zu können, ist hier, wo im stecken ...

setsPicker.selectedRow(inComponent: Int(userExercise.sets)) 
repsPicker.selectedRow(inComponent: Int(userExercise.reps)) 

Der Datentyp userExercise.sets oder .reps ist Int64, ob das hilft ?

Vielen Dank für Ihre Zeit und Unterstützung

Editier-

hier ist die Komponente überschreiben

func numberOfComponents(in pickerView: UIPickerView) -> Int { 
    if pickerView == repsPicker { 
     return 1 
    } else if pickerView == setsPicker { 
     return 1 
    } 
    return 1 
} 

Antwort

1

Sie selectRow Func nicht selectedRow

func selectRow(_ row: Int, 
    inComponent component: Int, 
     animated animated: Bool) 

so dass es verwendet werden soll, sollte

sein
setsPicker.selectRow(Int(userExercise.sets), inComponent :0,animated:false) 
repsPicker.selectRow(Int(userExercise.reps), inComponent :0,animated:false) 
+0

Danke, was wäre YourComponentId in diesem Fall? – jwarris91

+0

es hängt davon ab, welche Komponente Sie in der Auswahl ändern möchten, überprüfen Sie diese Überschreibung 'numberOfComponentsInPickerView' –

+0

ive hatte immer nur 1 in diesem func, fügte es zum OP für Ihre Referenz, nicht sicher, ob es korrekt ist! – jwarris91

Verwandte Themen