代码之家  ›  专栏  ›  技术社区  ›  ikel

自动布局在从Xcode 8转换为Xcode 9的项目上失败

  •  0
  • ikel  · 技术社区  · 7 年前

    我有一个应用程序在Xcode 8中工作。将其导入Xcode 9后,自动布局失败。 多行UILabels仅显示一行。UITableView中的多行UIlabels也显示1行。我没有约束问题。

    我用了类似的东西

    tableView.rowHeight = UITableViewAutomaticDimension
    tableView.estimatedRowHeight = 100 
    

    here 在改造项目中, 自动布局失败 .

    我在Xcode 9中创建了一个新项目,并实现了上面链接中给出的相同解决方案, 自动布局工作!

    编辑

    看起来有人面临着类似的问题 here .

    编辑2017.10.18

    一个可能的解决方案,有点黑客; here

    1 回复  |  直到 7 年前
        1
  •  0
  •   ikel    7 年前

    经过进一步研究,我从以下帖子中找到了答案; https://stackoverflow.com/a/28545177/1179312

    升级到XCode9之前发生了什么,我确实覆盖了 intrinsicContentSize 我决定不使用它,但忘了将其从我的项目中删除。 然后我升级到XCode 9,这让我很困惑。

    这导致了不可预测的行为。这是我的错。删除函数之前是覆盖的 内部内容大小

    • 多行标签问题