Başım ağrıyor olan basit bir şey - henüz herhangi bir JSON olmadan, eşlenebilir protokolle uyumlu bir nesneyi nasıl başlatılır. Ben yapmak istiyorum neObjectMapper - nesne başlatılıyor IOS
, basitçe böyle kodda boş Kullanıcı nesnesini initialize geçerli:
bana hata veriyor ancaklet user = User()
:
"çağrısında parametre # 1 için eksik argüman" Hızlı 1.2 ile 0.14 sürümünde yapabiliyordum, ama şimdi çalışmıyor. Şimdi hızlı 2 ve yeni Nesne Eşleştiricisi'nde bunu nasıl yapacağınızı biliyor musunuz? (Ben json vb ile nasıl başlatıldığını biliyorum, sadece başka amaçlar için bu nesneyi başlatmak istiyorum ve anlamaya olamaz)
class User: Mappable {
var username: String?
var age: Int?
var weight: Double!
var array: [AnyObject]?
var dictionary: [String : AnyObject] = [:]
var bestFriend: User? // Nested User object
var friends: [User]? // Array of Users
var birthday: NSDate?
required init?(_ map: Map) {
}
// Mappable
func mapping(map: Map) {
username <- map["username"]
age <- map["age"]
weight <- map["weight"]
array <- map["arr"]
dictionary <- map["dict"]
bestFriend <- map["best_friend"]
friends <- map["friends"]
birthday <- (map["birthday"], DateTransform())
}
}
yardım lütfen!
2 hataları: geçersiz kılma init üzerinde() "Initilaizer onun üst sınıftan belirlenen başlatıcı geçersiz kılmaz", bir sonraki error on self.init() -> "Type of value" _ -> _ "'init' 'init yok' 'init var' – Ammo
Böyle bir halim yok. pod 'ObjectMapper', '~> 1.0'; Swift 2.1. init() {super.init()} geçersiz kılmayı deneyebilirsiniz. –
@SergeyDemchenko Ammo ile aynı hatayı aldım ve init() geçersiz kılma amacı yener. ObjectMapper 1.2 Swift 2.2 – Questioner