fatal error: unexpectedly found nil while unwrapping an Optional value

在写swift3.0代码是偶遇此问题。最后终于找到解决方案。

问题如下:

NSClassFromString("CustomClass")时。字符串转成类时,工程中明明存在"CustomClass"。缺报如下错误:

fatal error: unexpectedly found nil while unwrapping an Optional value

解决方法:

点击NSClassFromString 使用方法类 可以看出此函数在 Foundation框架下 NSObjCRuntime.h 中。

从 NSObjCRuntime.h 中可以看出为OC类,因此swift中引用oc方法需要在CustomClass类 上方添加

@objc(CustomClass)。就能解决此问题。

@objc用法

在 Swift 代码中,使用@objc修饰后的类型,可以直接供 Objective-C 调用。可以使用@objc修饰的类型包括:1>未嵌套的类.2>协议3>非泛型枚举(仅限于原始值为整形的类型)。4>类和协议中的属性和方法。5>构造器和析构器。6>下标。

你可能感兴趣的:(fatal error: unexpectedly found nil while unwrapping an Optional value)