【问题标题】:ScrollView autolayout in storyboard故事板中的 ScrollView 自动布局
【发布时间】:2014-12-11 07:48:51
【问题描述】:

我正在尝试在情节提要中使用 scrollView 制作应用程序。像这样进行约束:

但它显示警告并提供width = 0

我不明白为什么。这个约束不正确吗?

【问题讨论】:

  • 我发现这个简单视图有什么问题。试图在这里做出可读的答案。

标签: storyboard autolayout scrollview constraints


【解决方案1】:

您的 ContentView 缺少 width 约束。所以在运行时,它会水平塌陷,因为没有什么可以阻止它。

默认情况下,您的视图会尽量占据最小的位置,直到您放置约束。

它也错过了从 ContentView 底部到 scrollView 底部的约束。在您放置最后一个垂直约束之前,您的 scrollView 无法猜测您的内容有多高。​​


您的滚动视图必须对其子视图具有顶部、底部、前导和尾随约束,以防滚动内容大小与子视图不同。

【讨论】:

  • contentview底部到scrollview底部不需要约束,因为contentview有高度约束。
  • 由于水平空间限制,这里也不需要宽度限制。
  • 滚动视图大小与滚动视图的内容大小不同。 IB 需要在滚动视图之外使用约束来定义其父级的大小和位置,但是要滚动的内容的大小仍然需要使用约束来定义。附加到父滚动视图边缘的 ContentView 边缘并不意味着它将匹配父滚动视图的大小。这就是为什么它显示警告Expected: width=0
  • 如果您希望您的内容与滚动视图的宽度相同,请添加一个 equals width 约束耦合与您现有的水平空间。
【解决方案2】:

您应该添加可以解决布局问题的缺失约束,并在需要时添加缺失的约束。

【讨论】:

    猜你喜欢
    • 2015-11-30
    • 1970-01-01
    • 1970-01-01
    • 2018-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-21
    相关资源
    最近更新 更多