Sto lavorando su un'app per iOS e ho dati memorizzati in CoreData che sto caricando su UITableView. Le entità di dati hanno un attributo chiamato id
che è una stringa che contiene un A
seguito da un numero (ad esempio "A1" "A2" ecc.).NSSortDescriptor in Swift
Quando uso questo codice selezionare, io alla fine con la tavola da ordinare lexicographically (cioè "A1" "A10" "A11" "A12" "A2" "A3", ecc)
let sortDescriptor = NSSortDescriptor(key: "id", ascending: true)
fetchRequest.sortDescriptors = [sortDescriptor]
Quello che voglio davvero è che sia ordinato numericamente, come ci si potrebbe aspettare. Come procedo a fare questo? So che un NSComparator
può essere aggiunto come argomento a NSSortDescriptor
ma non riesco a capire come funziona. Grazie in anticipo per qualsiasi aiuto!
Esattamente quello di cui avevo bisogno. Grazie! –
il nuovo formato sembra essere .. NSSortDescriptor (chiave: "id", crescente: true, selettore: #selector (NSString.localizedCompare (_ :))) –
@JosephAstrahan: Grazie, aggiornato! –