我在项目中使用以下代码在视图上绘制淡出色:
let customBlurClass: AnyObject.Type = NSClassFromString("_UICustomBlurEffect")!
let customBlurObject: NSObject.Type = customBlurClass as! NSObject.Type
self.blurEffect = customBlurObject.init() as! UIBlurEffect
self.blurEffect.setValue(1.0, forKeyPath: "scale")
self.blurEffect.setValue(radius, forKeyPath: "blurRadius")
super.init(effect: radius == 0 ? nil : self.blurEffect)
有时在Fabric上我会从这个应用程序获得崩溃报告:
let customBlurClass: AnyObject.Type = NSClassFromString("_UICustomBlurEffect")!
表示 NSClassFromString 返回nil值,
我搜索了很多关于这个问题,但没有有用的答案,
请帮助,
感谢。
答案 0 :(得分:2)
最可能的解释是,这些崩溃发生在运行iOS 8或更早版本的设备上。 iOS {9}中引入了_UICustomBlurEffect
。
你应该这样做:
if let blurClass = NSClassFromString("_UICustomBlurEffect") {
// set up blur view
}
避免在不受支持的设备上崩溃。