在Swift中为可转换属性实现NSValueTransformer



我正在尝试实现一个NSValue Transformer,这应该有助于我使用Transformable属性将Double Array保存到Core Data中。

所以我尝试实现transformmedvalueclass。但nsarray。class()被划掉了。遗憾的是,我没有找到这样做的原因。

我的方法是这样的:

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

我得到以下编译错误:期望的成员名后面跟着'。'类声明中期望的标识符

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

为什么NSArray.class被划掉了?我如何返回NSArray的类而不引起编译器错误?

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

NSArray.self

同样,在你的例子中,你需要用" override "标记你的transformvalueclass函数。所以:

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

最新更新