我想爲我的應用程序創建一個自定義的NumberFormatter,以便我有一些其他屬性,例如「lengthSymbol」。 但我想加一個屬性每次這個工程:Swift中的自定義數字格式化程序
let lengthSymbol:String = "ft"
但實際上我想以後設置的屬性,使我有
let lengthSymbol:String
而且我想我以後可以做:
init(symbol:String) {
lengthSymbol = symbol
}
但我得到的,我要實現這個錯誤:
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
這是我的第一個問題:這究竟是什麼?
而且我還必須在「init」函數中執行一些操作 - 出現錯誤「Super.init在返回初始化程序之前未被調用」 現在我該怎麼做?
將是巨大的,如果有人可以幫助我:)
好的,謝謝我會在稍後閱讀,但是你能告訴我什麼是「super.init」,並且NSCoder是「必需的init」嗎? – borchero 2014-09-20 17:39:20
從您的代碼中刪除init函數,並嘗試我在我的答案中描述的屬性觀察者。如果你的屬性變量只是一個字符串,你不需要重寫init函數。 – zisoft 2014-09-20 18:03:43