2016-06-07 9 views
11

Wie Sie RLMResults Daten in NSArray in Ziel C nehmen, bitte geben Sie mir den Vorschlag.RLMResults to NSArray Konvertierung in ios

+1

Sie müssen durch RLMResults durchlaufen, um ein Array zu machen .... –

+0

Danke El Captain, Es funktioniert gut ... –

+0

Sie sind willkommen :) –

Antwort

13

Genau das, was El Captain gesagt hat. Es gibt keine Möglichkeit, ein RLMResults Objekt automatisch in ein NSArray umzuwandeln; Du musst es selber machen.

RLMResults *results = ...; 
NSMutableArray *array = [NSMutableArray array]; 
for (RLMObject *object in results) { 
    [array addObject:object]; 
} 

Das gesagt, Sie sollten sich fragen, ob das wirklich notwendig ist. Realm bietet mit RLMResults eine Menge großartiger Vorteile unter der Oberfläche (z. B. das verzögerte Laden der Daten nur bei Zugriff), die verloren gehen, wenn Sie sie in eine NSArray konvertieren. Es wird empfohlen, dass Sie das Objekt RLMResults bei sich behalten und damit so viel wie möglich arbeiten und nur dann zu einem NSArray konvertieren, wenn Sie es wirklich brauchen.

+1

Sie haben Recht. Die Verwendung von 'RLMResults' ist weitaus nützlicher für die Verwendung von' NSArray', wenn Sie das meiste aus Realm herausholen wollen. Es gibt Situationen wie die, in der ich mich jetzt befinde, wo ich Realms-Unterstützung in unserer Anwendung hinzufügen muss und die Konsequenzen der Änderung der Datenquellen vieler unserer Dateien könnte Wochen dauern, bis ich sie ansprechen kann. Ich bin mir nicht sicher, ob das OP das gleiche Problem hat, aber wenn er es nicht ist, gehen Sie 'RLMResults' den ganzen Weg. –

+0

Ich bin in einer Situation, in der ich denke, dass ich zu 'NSArray' konvertieren muss. Ich möchte die Ergebnisse mit einem Block sortieren. – Colas

+0

Zuallererst habe ich Ihre Antwort upvoted, wie es gut scheint.Tim, wie NSArray zu RLMResult ändern oder konvertieren?. Ich versuchte, aber es dauerte als NSArray-Objekt und es stürzte ab. – user3182143