我已经阅读了一些有关如何使用Xib实例化自定义UIView的教程,它们都将“文件所有者”的类设置为“ MyClass”,而不是将xib中的实际UIView设置为“ MyClass” ,它是UIView的子类。然后,他们将Xib中的整个UIView连接为containerView:UIView
,作为MyView类(已经是UIView)中的属性。
创建并初始化自定义视图时,我希望能够执行myView.backgroundColor = .red
而不是myView.containerView.backgroundColor = .red
。
有了“文件的所有者” / containerView方法,当我真的只想要一个UIView实例时,便在内存中保留了两个实例。
如果我以编程方式创建它,则不需要containerView。为什么是这种惯例?使用Xib时可以避免使用文件所有者吗?