首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >UIScrollView +居中视图+可滚动内容大小+多个iPhone大小

UIScrollView +居中视图+可滚动内容大小+多个iPhone大小
EN

Stack Overflow用户
提问于 2014-10-08 16:17:58
回答 3查看 24.3K关注 0票数 25

我有:

  • 应用时,应在景观和肖像模式下工作。
  • 顶部有全尺寸滚动视图的视图。
  • 一些视图内部滚动视图与固定的宽度和高度。(加上H和W约束)
  • 设置为在容器中以水平居中的方式查看内部滚动视图。(按约束添加)

我在界面生成器中有一个警告:“有模糊的可滚动内容宽度”。

我知道,解决这个问题的唯一方法是设置跟踪和引导约束。但是对于不同的iPhones (5.5",4.7",4"),我需要设置不同的尾随约束和领先约束。

如何消除这一警告,并仍然有中心水平视图与固定的W和H的所有iPhone大小?

为了说明这个问题,我创建了Github:ScrollViewAmbigous

这不是重复的https://stackoverflow.com/questions/19036228/uiscrollview-scrollable-content-size-ambiguity-xcode-5-ios-7-interface-builder,但它相似(虽然没有回答),但这个问题特别涉及不同大小的iPhones。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-10-09 08:23:04

早上喝一杯新鲜咖啡,我想出了解决这个问题的办法!

下面是最简单情况下的初始状态:

  1. 对所有边都有0约束的scrollView
  2. 按钮中心为水平和垂直,宽度和高度固定
  3. 当然还有Has ambiguous scrollable content widthHas ambiguous scrollable content height 恼人的警告

我们要做的就是:

  • 为视图添加两个额外的约束,例如"0“,用于尾随和/或底部空间(在我的例子中是- UIButton)

重要:,您必须添加尾随和/或底部约束。不是“领导和顶部”-这不是工作!

您可以在我的示例项目中检查它,演示如何修复此问题:ScrollViewAmbigous

P.S.

我不知道它为什么工作,也不知道Xcode如何检测哪个约束更优先(因为我没有为这些约束设置优先级),但是如果有人解释,为什么它在下面的注释中工作,我会很感激。

票数 46
EN

Stack Overflow用户

发布于 2016-02-29 13:53:13

问题

  1. 警告告诉我们,滚动视图的内容大小取决于其子视图。
  2. 虽然您的子视图没有任何严格的位置和大小规则(没有固定的约束),但它会混淆nib生成的滚动视图内容大小。

解决方案

  1. 只将一个子视图作为滚动视图的“contentView”。
  2. 向该“contentView”添加严格(固定)约束。 最佳实践:与其滚动视图的宽度和高度相等。
  3. 将所有其他子视图和约束添加到“contentView”中。
票数 8
EN

Stack Overflow用户

发布于 2018-03-23 15:52:16

在这个问题上似乎有很多混淆。我的观点是,UIScrollView必须具有两个尾部空间约束,一个“内部”约束将其连接到其子视图之一(这样它就可以知道其内容宽度),另一个“外部”将其连接到同级视图或超级视图,从而知道其帧宽度。

同样的原则适用于高度,即两个底部空间约束。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26261659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档