Come è possibile utilizzare NSFetchedResultsController con la chiave di ordinamento tradotta e sectionKeyPath?NSFetchedResultsController sezioni localizzate ordinate
Problema: Ho ID nella proprietà "tipo" nel database come tipoA, tipoB, tipoC, ... e non direttamente il valore perché dovrebbe essere localizzato. In inglese typeA = Bird, typeB = Cat, typeC = Dog in tedesco sarebbe Vogel, Katze, Hund.
Con un NSFetchedResultController con chiave di ordinamento e sectionKeyPath sul "tipo" ricevo l'ordine e le sezioni - typeA - typeB - TypeC
Successivo traduco per la visualizzazione e tutto è bene in inglese: - Bird - Cat - Cane
Ora posso passare al tedesco e ricevere un ordinamento sbagliato - Vogel - Katze - Hund
perché ancora ordina per tipo A, tipoB, tipoC
Quindi sto cercando un modo per localizzare l'ordinamento per NSFetchedResultsController.
Ho provato l'approccio di proprietà transiente, ma questo non funziona per la chiave di ordinamento perché la chiave di ordinamento deve essere nell'entità.
Non ho altra idea. Ma non posso credere che non sia possibile usare NSFetchedResultsController su un attributo derivato richiesto per la localizzazione?
Ci sono discussioni correlate come Using custom sections with NSFetchedResultsController? ma la differenza è che i nomi delle sezioni personalizzate e la chiave di ordinamento hanno probabilmente lo stesso ordine. Non nel mio caso e questa è la differenza principale.
Alla fine avrei bisogno di un ordinamento per il NSSortDescriptor necessario su un attributo derivato, immagino. Questo ordinamento deve anche servire per la sezioneKeyPath.
Grazie per qualsiasi suggerimento.
Sì, l'ho provato fino a un certo punto. Ma ad essere onesti, non ero in grado di convincere NSString usando questa categoria definita confrontare metodo .... non mi aspettavo sectionKeyPath è un problema perché ho potuto utilizzare la proprietà transitoria qui che dovrebbe corrispondere il tipo di ordinamento della ordinamento localizzato dal descrittore di ordinamento. – Gerd
Ho dato un altro tentativo. Si prega di fare riferimento alla risposta "Ho provato di nuovo con il confronto personalizzato ..." (troppo lungo per un commento). – Gerd