【问题标题】:Xcode 7 Vertical Scroll View IssuesXcode 7 垂直滚动视图问题
【发布时间】:2016-09-01 23:01:43
【问题描述】:

我在 Xcode 7.3 中创建仅垂直滚动视图时遇到问题。我已经关注了一些关于 SO 和其他地方的教程,但由于某种原因,我最上面的视图的宽度似乎延伸到屏幕之外或向左移动。滚动视图仅限于垂直滚动,这是我的意图,但内容部分显示在屏幕之外。

我尝试将按钮水平居中并固定到内容视图的顶部和底部。在模拟器上,它们出现在屏幕左侧的一半之外,但它们在情节提要中看起来很好,没有约束问题。我什至在助手编辑器中预览了 3.5、4 和 4.7 英寸的屏幕,它看起来和我预期的一样。但是当我在模拟器上运行它时,它就搞砸了。此外,内容视图的背景应该是白色的(出于测试目的),但它显示的是最顶层视图的灰色。

这就是我所做的以及我的约束图片

  1. 添加滚动视图并固定到超级视图的上、下、左、右 (0,0,0,0)

  2. 添加内容视图并固定到滚动视图的顶部、底部、左侧、右侧 (0,0,0,0),并添加一个恒定的高度 1000。

  3. 我 ctrl+从 Content View 拖动到 View(Scroll View 的父级)并设置等宽约束。

  4. 将内容视图引脚 1 内的 2 个按钮放在顶部,另一个放在底部。两者也是水平居中的。

这是它在模拟器上的样子。

Simulator-Actual

这就是我在 iPhone 屏幕上的样子。

Storyboard-Expected

【问题讨论】:

  • 哪个视图没有正确设置滚动视图或内容视图
  • 我认为是内容视图。它被设置为与屏幕视图等宽,但它似乎不在运行时。
  • 给它水平中心约束,然后检查
  • @AhmadIshfaq 做到了。非常感谢!我认为您将答案添加为评论。如果您将其添加为答案,我可以将其标记为正确答案。
  • 答案添加请接受

标签: ios xcode swift autolayout size-classes


【解决方案1】:

给它水平中心约束,然后检查

【讨论】:

    【解决方案2】:

    我认为您已正确设置所有约束。但还是要再检查一次。

    第 1 步:- 移除勾选 Adjust scrollview insets

    第 2 步 :- 正如你所说 Give Lead , Trialing , Top , Bottom = 0 .

    第 3 步 :- 与 step 相同,从 superview 设置 Leading , Trialing , Top , Bottom = 0

    警告:- 您需要同时检查约束检查器,因为有时它会占用 -20 的前导空间。

    第 4 步:- 将约束设置为第一个按钮 Top 、Leading 、 Trialing

    第 5 步:- 设置前导、试用、垂直空间到按钮 1 和底部(来自 UIView 的底部)

    如果你给 button1 提供垂直间距并给底部 view 那么你不需要设置 contentsize 否则它会自动滚动。

    希望对你有所帮助。

    【讨论】:

    • 谢谢。您的回答似乎帮助我从导航栏中删除了顶部的额外填充。最终,我不得不在内容视图上添加一个水平约束。
    • 我认为如果你给中心水平 cinstrain 那么你的视图不能是 scroll.so ,你需要为此修改常量。所以根据我的说法,水平设置中心是不合适的。
    猜你喜欢
    • 2017-02-03
    • 1970-01-01
    • 2017-07-30
    • 1970-01-01
    • 1970-01-01
    • 2015-12-21
    • 1970-01-01
    • 2010-11-29
    • 1970-01-01
    相关资源
    最近更新 更多