2016-06-11 7 views
0

Kann nicht herausfinden, warum ich diesen Fehler bekomme.Realm Ziel C: Keine sichtbare @ Schnittstelle für 'RLMObject' deklariert den Selektor 'createOrUpdateInRealm: withValue:'

Keine sichtbaren @interface für 'RLMObject spricht der Wähler 'createOrUpdateInRealm: withValue:'

Ich habe das Realm/Realm.h Header enthalten

meine RLMObject auf diese Weise definieren

Dann erstelle ich ein NSMutableDictionary, um Werte zu enthalten, die ich teilweise auf dem RLMObject aktualisieren möchte.

NSMutableDictionary *updateValues = [[NSMutableDictionary alloc] init]; 

Und dann rufe ich createOrUpdateInRealm: withValue: auf m

[m createOrUpdateInRealm:realm withValue:updateValues]; 

aber ich habe den Fehler. Ich habe keine Ahnung, warum das passiert?

Antwort

0

+createOrUpdateInRealm:withValue: ist eine Klassenmethode RLMObject, keine Instanzmethode. Dies bedeutet, dass Sie es auf Ihrem Unterklasse aufrufen müssen direkt, nicht auf einer Instanz der Unterklasse:

[MyClass createOrUpdateInRealm:realm withValue:dictionary]; 
1

createOrUpdateInRealm:withValue: sollte auf Ihrer Unterklasse aufgerufen werden, nicht auf einer Instanz.

Sie sollten es wie folgt verwenden:

CustomObject *myCustomObject = [CustomObject createOrUpdateInRealm:realm withValue:dictionary]; 

wo CustomObject eine Unterklasse von RLMObject ist.

Verwandte Themen