【发布时间】:2019-10-02 22:05:24
【问题描述】:
我有一个如下的视图控制器,下面的布局显示在 iPhone XS 上。有了这组约束,我可以在故事板中的不同设备视图之间切换,一切都会调整,约束不会出现警告/错误。
但是,问题在于,在 iPhone 8 和 SE 上,元素的大小太大而无法在屏幕上显示,并且文本视图被压缩并且并非所有文本都可见(要求所有文本都无需使文本本身可滚动即可查看。因此,这就是我将所有内容放入滚动视图的原因。 但问题是,在 iPhone 8/SE 上,滚动视图实际上并没有滚动。 在做了一些研究和从上一个问题之后,解决方案是将 view.height = height(在滚动视图与其子视图之间)的优先级从默认值 1000 设置为 250。
这确实解决了滚动视图不滚动的问题,并且在 iPhone 8 和 SE 上的最终结果符合预期 - 并非所有文本和按钮都在屏幕上可见,但用户可以向下滚动以查看它们. 在 iPhone 8+ 和 XS 上也可以。但是,如果我切换到情节提要中的 XR 或 XS Max 视图,我现在会收到一个约束错误 - 说 Scroll View: Need constrains for Y position or height。
我已经尝试了很多东西,但我无法同时摆脱所有约束错误,同时让滚动视图在较小的屏幕设备上实际滚动。
多年来,这一直让我发疯,感谢您对这里缺少/不正确的任何建议。
【问题讨论】:
-
有什么方法可以提供一个带有此设置的示例项目?调试起来会更容易