如何获取Nib文件中的所有视图?
我试图通过Nib
获取所有观看次数:
let objects = Bundle.main.loadNibNamed("ViewName", owner: self, options: nil)?[0] as! NSArray
let mainView : UIView = objects[0] as! UIView
虽然我收到了此错误:
无法投放类型的价值' UIView' (0x108080b40)到NSArray' (0x105173c58)。
提前感谢您的帮助。
答案 0 :(得分:1)
loadNibNamed
返回类型为[Any]?
的数组,您使用[0]
下标它,意味着您正在访问Array的第一个对象。所以只需删除[0]
即可。
let objects = Bundle.main.loadNibNamed("ViewName", owner: self, options: nil)
第二个选项,您可以直接初始化UIView
对象。
if let mainView : UIView = Bundle.main.loadNibNamed("ViewName", owner: self, options: nil)?[0] as? UIView {...}
选择哪种解决方案可以解决您的错误。