swift - Swift 中的自定义数字格式化程序

标签 swift xcode6

我想为我的应用程序创建一个自定义 NumberFormatter,这样我就有一些额外的属性,例如“lengthSymbol”。 但每次我想添加一个属性时,它都会起作用:

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” 我现在该怎么办?

如果有人能帮助我就太好了:)

最佳答案

您需要的是变量,而不是常量。

var lengthSymbol : String?

它应该是可选的,因为无论是否设置它都应该有效。

关于swift - Swift 中的自定义数字格式化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25951369/

相关文章:

swift - 将 PFFile 加载并保存到 mongoDB

ios - 子类化 UIAlertController 并遇到运行时错误

ios - 如何检测 iPhone 6s 和 6s+

class - 作为方法参数的 Swift 类变量

xcode - Xcode 6 中的 "Embedded Content Contains Swift Code"build设置有什么作用?

ios - 如何将高度约束添加到层次结构中的顶部 UIView?

swift - 检测 iPad 的方向 - Swift Playgrounds

ios - 将 UIImagePickerController cameraOverlayView 定位在相机预览的顶部

swift - 如何为 Siri 创建自定义命令

ios - 为自定义协议(protocol)设置委托(delegate)时收到警告