无法将 UIImageView 和 Label 放入滚动视图

Having troubles fitting the UIImageView and Label into Scroll View

我想将图像 + 标签放入可滚动视图中。

看起来是这样My setup

所以麻烦的是图片和标签的宽度与屏幕宽度不匹配。

我试图将 UIImageView 宽度从 400 更改为 300 左右,但这些更改要么不会生效(如果超过 300),要么这些更改使标签消失(宽度设置为 300 或以下)。 Observe.

有趣的是 - 当您看到视图层次结构时标签实际上出现了,尽管它看起来有点扭曲。但是 iOS 屏幕上没有您的标签,先生。

我也尝试在超级视图中设置相等的宽度和高度,但这个选项只是禁用滚动,使视图严格适合屏幕(标签似乎被裁剪)

我希望标签美观且可滚动,但我也希望在屏幕上看到它。问的太多了?

编辑:我刚刚尝试删除自动布局,结果与自动布局相同。 (点击"Observe"link再看一遍,完全一样的情况)谁能解释一下为什么?

这是一个非常简单的修复。对于图像,您应该使用等宽和水平居中;但是,请确保使用固定宽度。为了使图像看起来不错,请使用缩放模式 - 我发现 Aspect Fit/Fill 效果最好。

标签也应等宽且水平居中。如果文本大小不总是相同,您可能需要以编程方式计算标签的高度。

所以我的特定问题的答案是 - 缩短传递给标签的实际文本。 显然 UIScrollView 无法处理疯狂异常高度的东西(我正在向它传递一个 huuuge 文本)所以在我的特定情况下解决方案是 - 缩短文本。现在它就像一个魅力(即使我仍然需要玩一些有限制的东西来摆脱警告和东西)