【发布时间】:2016-05-09 06:06:56
【问题描述】:
我正在尝试使用 obj.setValue(value, forKey: key) 在我的 Swift 代码中设置 @objc 对象的值。
当对象具有正在设置的属性时,它可以正常工作。但如果不是这样,我的应用程序会因未捕获的NSException(“类不符合键值编码...”)而严重崩溃。
我怎样才能像在 Objective-C 中一样捕捉和吸收这个异常,以免我的应用程序崩溃?我尝试将它包装在 Swift try-catch 中,但它抱怨没有任何指令抛出并且什么都不做。
【问题讨论】:
-
你真的需要KVC吗?字典中的对象应该使用
setObject:forKey:或键下标设置,尤其是在 Swift 中。 -
是的,我正在编写一个 XML 解析器,需要能够通过对象的名称设置任意属性。
-
那么,如果密钥存在,而不是捕获异常检查。
-
完全可以。我不认为有办法做到这一点!
标签: swift exception-handling swift2 nsexception