Я создал NSManagedObject
, называемый MapState. Затем я создал категорию для вызова некоторых методов и хранения некоторых дополнительных переменных.NSManagedObject с категорией и делегатом
.h #import "MapStateDB.h"
@protocol MapStateDelegate;
@interface MapStateDB (MapState)
@property (weak, nonatomic) id <MapStateDelegate> delegate;
-(void)selectedSceneObject:(SceneObject *)sceneObject;
-(void)removeDisplayedScene;
@end
@protocol MapStateDelegate <NSObject>
-(void)displayScene:(SceneDB *)scene inState:(NSString *)state;
-(void)removeScene:(SceneDB *)scene;
@end
В .m:
@dynamic delegate;
-(void)setDelegate:(id<MapStateDelegate>)delegate {
}
Как сделать сеттер? Обычно это было бы просто:
-(void)setDelegate:(id<MapStateDelegate>)delegate {
_delegate = delegate;
}
Но так как переменная @dynamic
вместо @synthesize
, не _delegate
не создается. И @synthesize
создает ошибку.
Как я должен обращаться с этим?
Возможно, вы должны обработать это с помощью класса-оболочки вместо расширения ... – Wain
Это мой второй вариант. – Padin215