Я пытаюсь использовать RestKit в моем проекте, основанном на Swift. Я, похоже, не могу использовать примитивные типы данных Swift, такие как Int, Double, Bool и т. Д., За исключением String, Array и Dictionaries (что, по-видимому, связано с тем, что они беспошлинно подключены к NSString , NSArray и NSDictionary)Использование Restkit with Swift
С объективом c я мог бы определить свойства в моих объектах как примитивные типы данных как назначаемые свойства. В Swift я могу использовать только объекты (String, NSNumber, Array, Dictionary), иначе приложение выйдет из строя с помощью «setValue: forUndefinedKey: этот класс не подходит для кодирования ключа для ключа aBool».
Пример: Вот как мой объект будет выглядеть в Objective-C:
@interface TestObject : NSObject
@property (strong, nonatomic) NSString *aString;
@property (assign, nonatomic) BOOL aBool;
@property (assign, nonatomic) CGFloat aFloat;
@end
и "эквивалент" в Swift:
class TestObject:NSObject {
var aString:NSString?
var aBool:Bool?
var aFloat:Double?
}
Это происходит сбой, и в то время как я понимаю, почему это сбои, я хотел бы знать, есть ли другое обходное решение, чем использование NSNumber для Booleans, Integer и Floats, так же, как это работает в Objective-C?
(Если какой-либо из разработчиков RestKit читают это: Прежде всего спасибо за вашу работу, а затем: Существуют ли какие-либо планы в отношении Swift поддержки/порт для Swift)
Вы должны показывать полные сообщения об исключениях и трассировки стека. Это также может быть лучше поднято как проблема на github. – Wain