我有以下快速课:
import Foundationclass mytransformer: NSValuetransformer { let amount = 100 overrIDe class func transformedValueClass() -> AnyClass! { return NSNumber.self } overrIDe func transformedValue(value: AnyObject!) -> AnyObject! { return value.integerValue + amount }}
所以这个变压器应该做的是,在gui中加一个给定的值100。
如您所见,变压器类现在显示在IB中的Value transformer下拉列表中。
但是如果我选择这个变压器,应用程序会崩溃:
2014-08-27 20:12:17.686 cdTest[44134:303] *** Terminating app due to uncaught exception 'NSInternalinconsistencyException',reason: 'Cannot find value transformer with name newtransformer'
在AppDelegate中注册该变压器是否正确
overrIDe class func initialize() { let newtransformer = mytransformer()}
有谁知道这整个东西应该如何工作?
亲切的问候!
马丁
NSValuetransformer.setValuetransformer(newtransformer,forname: "mytransformer")
然后在您的Interface Builder中,您应该使用mytransformer而不是Value transformer下拉列表下的newtransformer。
总结以上是内存溢出为你收集整理的xcode 6中的自定义NSValueTransformer与swift全部内容,希望文章能够帮你解决xcode 6中的自定义NSValueTransformer与swift所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)