在哪个观点周期中将子视图添加到 UIView 子类的通用“经验法则”是啥?
Posted
技术标签:
【中文标题】在哪个观点周期中将子视图添加到 UIView 子类的通用“经验法则”是啥?【英文标题】:What is the generic "rule of thumb" for in which point of view cycle to add subviews to an UIView subclass?在哪个观点周期中将子视图添加到 UIView 子类的通用“经验法则”是什么? 【发布时间】:2012-08-31 09:17:49 【问题描述】:什么是通用的“经验法则”,在哪个观点周期中将子视图添加到 UIView 子类?
例如,如果您决定继承 UITableViewCell 类,您应该在哪个方法中将子视图添加到您的视觉层次结构中?
【问题讨论】:
【参考方案1】:与我一起工作的其他开发人员,我通常在initWithFrame:
中添加子视图,并在layoutSubviews
中调整大小或移动它们。尽管有视图,我完全用笔尖布局,通常我的意思是无论如何都要保持固定大小。有时匆忙会胜出,我们在初始化程序中调整它们的大小,尤其是对于我们不需要太多调整大小的视图。
可以这样想:您只需向视图层次结构中添加一次。但是您可能需要多次重新定位和调整其大小。因此,您希望在共享该模式的方法中完成这些任务。 initWithFrame:
只会被调用一次,layoutSubviews
会被调用多次。
【讨论】:
谢谢,我也是这么想的。以上是关于在哪个观点周期中将子视图添加到 UIView 子类的通用“经验法则”是啥?的主要内容,如果未能解决你的问题,请参考以下文章
如何在一行代码中将多个子视图添加到我的 iOS 视图中? (也许通过“monkeypatching”一个 `addSubviews` 实例方法到 UIView?)
如何在 iOS 中将 UIView 添加到 UIScrollView 中(具有动态内容的视图)