在Swift中为Transformable属性实现NSValueTransformer

时间:2014-06-15 13:10:58

标签: core-data swift

我正在尝试实现一个NSValue Transformer,它可以帮助我使用Transformable属性将Double Array保存到Core Data中。

所以我尝试实现transformedValueClass。但是NSArray.class()被划掉了。不幸的是,我没有找到理由 我的方法看起来像这样

class PacePerK:NSValueTransformer{
     class func transformedValueClass() -> AnyClass!
        {
           return NSArray.class()
        }
}

我收到以下编译器错误: “。”后面的预期成员名称 类声明中的预期标识符

不幸的是他们并没有真正帮助我。

为什么NSArray.class划掉了? 如何在不引起编译器错误的情况下返回NSArray类?

1 个答案:

答案 0 :(得分:4)

在Swift中引用类对象的正确原因似乎是:

NSArray.self

此外,在您的示例中,您需要使用“override”标记您的transformedValueClass函数。所以:

class PacePerK:NSValueTransformer{
    override class func transformedValueClass() -> AnyClass!
    {
        return NSArray.self
    }
}