我正在尝试为某些子视图创建自定义布局。我的文件是 a ViewController
,所以我必须将其视图称为self.view
. 子视图是 的子视图self.view
。
当我[self layoutSubviews];
显式调用 in 时viewDidLoad
,它将-layoutSubviews
毫无问题地执行代码。
但是,我读过我不应该-layoutSubviews
显式调用,或者调用它,self
因为那是一个UIViewController
. 我尝试-setNeedsLayout
通过这样调用它来实现:[self.view setNeedsLayout]
in viewDidLoad
,并取出显式调用-layoutSubviews
但保留其声明。但这似乎不起作用。
我被链接到一篇关于何时调用 layoutSubviews 的文章,并且似乎应该在我添加子视图时调用它,但这似乎并没有发生在这里。
如果我想要安全,并按照它在类参考及其方法中建议的方式做事UIView
,我应该如何才能使用这两种方法?