Predicates og sorteringsdeskriptorer
Filtrér og sortér hentede resultater.
Predicates og sorteringsdeskriptorer er en gratis SwiftUI Academy-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i SwiftUI Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. SwiftUI Academy-kurset indeholder 4 lektioner i alt.
Tilpasning af dine resultater
Når dataene vokser, vil du sjældent have alle rækker. Prædikater og sorteringsbeskrivelser lader dig hente præcis det relevante udsnit.
Hvad et prædikat er
Et NSPredicate er en regel, der afgør, hvilke poster der matcher, skrevet i en kompakt formatstreng, der minder om en forespørgsel.
NSPredicate(format: "isDone == true")Sammenligning af værdier
Brug operatorer som ==, > og < i format-strengen for at matche tal, datoer og andre felter.
NSPredicate(format: "priority > 2")Sikre argumenter
Indsæt dynamiske værdier med %@-pladsholdere i stedet for at bygge strenge, hvilket er sikrere og tydeligere.
NSPredicate(format: "title == %@", searchText)Match af tekst
Match delvis tekst med CONTAINS, og tilføj [c] for at ignorere store og små bogstaver ved brugervenlig søgning.
NSPredicate(format: "title CONTAINS[c] %@", query)Kombination af betingelser
Sæt regler sammen med AND og OR for at udtrykke mere specifikke filtre i ét prædikat.
NSPredicate(format: "isDone == false AND priority > 1")Hvad en sorteringsbeskrivelse er
En SortDescriptor fortæller Core Data, hvilken attribut der bestemmer rækkefølgen på rækkerne, og i hvilken retning.
SortDescriptor(\.title, order: .forward)Flere sorteringsnøgler
Angiv et array med beskrivelser for at afgøre uafgjorte tilfælde, f.eks. ved først at sortere efter prioritet og derefter efter navn.
[SortDescriptor(\.priority), SortDescriptor(\.title)]Brug af dem i @FetchRequest
Kombinér begge i en @FetchRequest for at hente et filtreret og sorteret udvalg direkte i din visning.
@FetchRequest(sortDescriptors: [SortDescriptor(\.title)], predicate: NSPredicate(format: "isDone == false")) var tasks: FetchedResults<Task>Filtrering slår gennemløb
Det er hurtigere at lade lageret filtrere og sortere end at hente alt og beskære det i Swift. ⚡
Opdatér filtre live
Du kan genopbygge et prædikat ud fra et søgefelt og tildele det igen, så resultaterne forfines, mens brugeren skriver.
Hurtigt tjek
Nu kan du filtrere og ordne data. Hurtigt tjek af værktøjerne.
Opsummering
Du brugte prædikater til at filtrere poster og sorteringsbeskrivelser til at ordne dem, så du hentede præcis de data, hver skærm har brug for. ✨
Lær Swift med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 30
- Lektioner
- 120
Ofte stillede spørgsmål
Er lektionen “Predicates og sorteringsdeskriptorer” gratis?
Ja — hele teksten til “Predicates og sorteringsdeskriptorer” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af SwiftUI Academy-kurset, skal du opgradere til CoddyKit PRO. SwiftUI Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Predicates og sorteringsdeskriptorer”?
Filtrér og sortér hentede resultater. Du øver dig i SwiftUI Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på SwiftUI Academy?
Der kræves ingen tidligere erfaring. SwiftUI Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.
Hvor lang tid tager lektionen “Predicates og sorteringsdeskriptorer”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne SwiftUI Academy-lektion?
Ja. Alle SwiftUI Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Core Data-stakken
- Hentning med @FetchRequest
- Oprettelse og lagring af entiteter
- Predicates og sorteringsdeskriptorer