【发布时间】:2019-07-18 14:33:46
【问题描述】:
我正在使用 xib 文件来加载我的视图。所以我使用 loadNibNamed(_:owner:options:) 方法,这个方法返回类型是:[Any]?。 据我了解,如果出现问题,它应该返回 nil,但是当我尝试加载不存在的文件时,我的应用程序会终止异常。我认为如果没有给定名称的 xib 文件,loadNibNamed 将返回 nil。 所以我的问题是:有没有办法通过保护或 if 语句检查 xib 文件是否存在而不会从应用程序中获得异常?
这是我的代码:
if let view = Bundle.main.loadNibNamed(name,
owner: self,
options: nil)?.first as? UIView {
return view
}
else {
fatalError("no file")
}
【问题讨论】:
-
@ShalvaAvanashvili,非常感谢,它成功了。我认为下次我应该对现有问题进行更好的研究......