Sunt preluarea datelor din Bază de Date și afișarea într-un Picker, acest punct de vedere este construit în SwiftUI. M-am luptat în primul rând pentru a obține o selecție pentru a lucra de la selector, dar nu a găsit dacă am preselecta primul obiect dintr-mi aduce urmare, în opinia lui init, selectorul de selecție de lucrări.
Ceea ce vreau este de a fi capabil de a încărca datele mele în Picker, dar nu preselecta unul dintre obiecte. Din nou, daca fac update codul de mai jos astfel încât nimic nu este preselectat, atunci eu nu pot selecta nimic. Am ajunge la ecranul de opțiuni, dar atunci când am apăsați unul, nu se întâmplă nimic, am doar acel mic flash pe rând. Trebuie să apăsați pe butonul Înapoi pentru a obține înapoi în formă vedere.
Orice idei pentru modul de a face de încărcare Bază de Date într-un Selector fără preselectarea una dintre opțiunile de munca?
-Multumesc!
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)
}
}
}
}
}
}
}