Swift NSPredate wirft EXC_BAD_ACCESS (Code = 1, Adresse = 0x1) beim Zusammensetzen von Anweisungen

8

Ich versuche, NSPredate in Swift zu verwenden, um Core Data abzufragen, aber es wirft einen EXC_BAD_ACCESS (Code = 1, Adresse = 0x1) Fehler beim Versuch, es auszuführen, was mache ich falsch?

Hier ist die Datei, in der der Fehler auftritt

%Vor%     
Cesarg219 20.02.2015, 02:37
quelle

2 Antworten

33

Der Platzhalter %@ in Prädikatformatzeichenfolgen ist für Objective-C Objekte, also müssen Sie die ganze Zahl in ein NSNumber :

umbrechen %Vor%

oder verwenden Sie stattdessen ld , um eine (lange) Ganzzahl zu formatieren:

%Vor%

Beachten Sie auch, dass

%Vor%

erstellt nicht ein zusammengesetztes Prädikat, die Sekundenzuweisung einfach überschreibt das erste. Sie können ein NSCompoundPredicate verwenden:

%Vor%

oder kombinieren Sie einfach die Prädikate mit "AND":

%Vor%     
Martin R 20.02.2015, 06:01
quelle
0

Anstatt sich mit Formatkonvertierungen und AND Subpredicates zu beschäftigen, können Sie das PredicatePal Framework verwenden:

%Vor%

Beachten Sie, dass Sie == anstelle von = für den Gleichheitsvergleich verwenden müssen.

    
Glen Low 28.12.2015 05:37
quelle

Tags und Links