在 Swift 中使用对象初始化器来替换 AllocWithZone
Posted
技术标签:
【中文标题】在 Swift 中使用对象初始化器来替换 AllocWithZone【英文标题】:Using Object Initializers in Swift to replace AllocWithZone 【发布时间】:2015-08-07 19:26:28 【问题描述】:我最近将我的 Xcode 从 Xcode 7 beta 4 更新到 Xcode 7 beta 5,并开始出现以前不存在的错误。那就是:“AllocWithZone 在 Swift 中不可用:请改用 Object Initializers。”
这里是发现错误的代码:
public func copyWithZone(zone: NSZone) -> AnyObject
let copy = self.dynamicType.allocWithZone(zone) as ChartDataSet
copy.colors = colors
copy.label = self.label
return copy
我应该用什么来代替“.allocWithZone”,以便它使用对象初始化器而不是这个 Obj C 组件?
【问题讨论】:
看看***.com/a/25809379/1187415 ... 【参考方案1】:我用过这个,ios 图表库对我有用:
let copy=self.dynamicType.initialize() as! ChartDataEntry
【讨论】:
谢谢,是的,我使用的是 iOS 图表库。 顺便说一句,有一个 swift-2.0 分支,更新到 beta 5 :-) 谢谢 daniel.gindi。这些图表看起来很棒。以上是关于在 Swift 中使用对象初始化器来替换 AllocWithZone的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Swift 的 NSCoding 初始化中返回预先存在的核心数据对象?