【问题标题】:Why do i need to call layoutIfNeeded when using autolayout为什么在使用自动布局时需要调用 layoutIfNeeded
【发布时间】:2013-06-21 12:17:22
【问题描述】:

我有自定义 UITableViewCell,在单元格内我有简单的 UIView,当我尝试获取该视图框架时,我得到了 0 高度和宽度。但是当我在 awakeFromNib 方法中调用 [self layoutIfNeeded] 之后一切正常.有什么问题 ?为什么我每次都需要调用 layoutIfNeeded 来获得正确的帧大小?

【问题讨论】:

  • 我会展示你的代码。如果您遇到此问题,可能有更好的方法来做您正在做的事情。并非所有代码都在awakeFromNib 中。有时viewWillAppearviewDidLoad 更有意义。

标签: ios uiview autolayout nslayoutconstraint


【解决方案1】:

由于您要覆盖awakeFromNib,我假设您正在使用Interface Builder 来布置您的单元格。如果是这样,只有在第一次调用layoutSubviews 之后才设置子视图的框架。

【讨论】:

    猜你喜欢
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多