我对这个问题发疯了,但我认为答案比预期的要容易。我有这样的课:
@protocol Messagge @end
@interface Messagge : JSONModel
@properties ..... ... ... ..
- (...) methods......
@end
我将此类用于 NSMutableArray 中的对象,我从 Web 服务下载为 json。在像这样的另一个类中:
@interface AnswerMessages : AJSONModelSubClass
@property (strong,nonatomic) NSMutableArray<Messaggio, ConvertOnDemand> *messaggi;
- (...) methods....
initFromURLWithString:
并且在 AnswerMessages 上使用 JSONModel 方法下载数组似乎一切正常。
但我需要改变,我无法让它发挥作用。
为了方便起见,我对 NSMutableArray 进行了子类化,并且因为我需要添加方法和委托(我使用了一个类别,但现在还不够)所以我创建了这个类:
@protocol MessaggesDelegate <NSObject>
@required
- (...) delegateMethods......
@end
@protocol Messagges <Messagge,ConvertOnDemand> @end
@interface Messagges : NSMutableArray <Messagge, ConvertOnDemand>
- (....) methods....
@end
并尝试像这样更改 AnswerMessages 类:
@interface AnswerMessages : AJSONModelSubClass
@property (strong,nonatomic) Messaggi *messaggi;
- (...) methods.....
但现在当我使用initFromURLWithString:
应用程序终止时,因为:
*** Terminating app due to uncaught exception 'Type not allowed', reason: 'Messagges type not supported for AnswerMessages.messagges'
所以我尝试了一些改变,但没有奏效。
有什么帮助吗?
提前致谢