Je suis d'extraire des données de Base de Données et les afficher dans un Sélecteur de ce point de vue est construit en SwiftUI. J'ai eu du mal au début pour obtenir le choix de travailler à partir du sélecteur, mais trouvé si je présélectionner le premier objet de mon extraire les résultats, du point de vue de l'init, le sélecteur de sélection des œuvres.
Ce que je veux, c'est être en mesure de charger mes données dans le Sélecteur, mais pas présélectionner un des objets. Encore une fois, si je mettre à jour le code ci-dessous donc, rien n'est présélectionné, alors je ne peux pas choisir n'importe quoi. J'arrive à l'écran d'options, mais quand je touche, rien ne se passe, je viens d'obtenir que peu de flash sur la ligne. Je dois appuyer sur le bouton Back pour revenir à la vue de formulaire.
Toutes les idées sur la façon d'effectuer le chargement de Base de Données dans un Sélecteur sans présélectionnant l'une des options de travail?
-Merci!
import SwiftUI
import CoreData
struct RecordCreateview: View {
@FetchRequest private var actions: FetchedResults<Actions>
@State private var selectedAction: Actions
init(context: NSManagedObjectContext) {
let fetchRequest: NSFetchRequest<Actions> = Actions.fetchRequest()
fetchRequest.sortDescriptors = [NSSortDescriptor(keyPath: \Actions.action, ascending: true)]
fetchRequest.predicate = NSPredicate(value: true)
self._actions = FetchRequest(fetchRequest: fetchRequest)
do {
let fetchResult = try context.fetch(fetchRequest)
self._selectedAction = State(initialValue: fetchResult[0])
} catch {
fatalError("Problem fetching Action records.")
}
}
var body: some View {
NavigationView {
Form {
Picker("Select action", selection: $selectedAction){
ForEach(actions) { action in
if action.title == true {
Text("\(action.action!)").tag(action)
}
}
}
}
}
}
}