似乎是一个琐碎的问题,但我无法使这个编译。无论是在操场上,还是在正常快速的ios项目中。(请注意,我没有使用故事板,这就是为什么我不需要/关心init?(编码器) part..it;s jsut,它必须包括在内,否则编者会抱怨它。)
class SegmentedControl: UISegmentedControl {
let configuration: [String]
required init(configuration: [String]) {
self.configuration = configuration
super.init(items: configuration)
}
required init?(coder aDecoder: NSCoder) { fatalError() }
}
let x = SegmentedControl(configuration: ["a","b"])
它抱怨没有实现去符号初始化器。
致命错误:类'__lldb_expr_167.SegmentedControl‘使用未实现的初始化器’init(框架:)‘
我不明白这是怎么回事。指定的初始化器不是UISegmentedControl的init(条目:)吗?我在子类指定的初始化器中调用它。
发布于 2018-07-01 19:33:03
解决方案:
class SegmentedControl: UISegmentedControl {
var configuration = [String]()
required init(configuration: [String]) {
super.init(items: configuration)
self.configuration = configuration
}
override init(frame: CGRect) {
super.init(frame: frame)
}
required init?(coder aDecoder: NSCoder) { fatalError() }
}
let x = SegmentedControl(configuration: ["a","b"])
https://stackoverflow.com/questions/47734345
复制相似问题