我有一个只有iPhone的纵向应用程序,必须在iPhone 4s及更高版本上运行。该设计针对iPhone 6。
我想让它以这样的方式工作:对于小屏幕,如果内容不适合,内容会垂直滚动。所有东西都使用Autolayout布局,在iPhone 6及更高版本上看起来很完美。但是在较小的iPhone上,它试图垂直挤压内容并破坏设计。
我已经在内容视图中嵌入了所有内容,并将此视图添加到UIScrollView中。 我想如果我在内容视图中添加一个高度约束,UIView就会有 contentSize 并且会滚动 - 但事实并非如此。 Autolayout打破了这种限制。
我以为我会理解带有autolayout的滚动视图的“特殊”约束......
我做错了什么?
答案 0 :(得分:1)
如果没有运行时的约束列表,实际问题是什么,这是不可能告诉你的,但是如果你仔细阅读这篇优秀的文章,你可能会想出如何正确地做到这一点:
答案 1 :(得分:0)
此视频将帮助您了解如何使用UIScrollView
的自动布局约束:
https://www.youtube.com/watch?v=UnQsFlMGDsI
答案 2 :(得分:0)
你的约束应该是,
scrollview - 顶部,底部,前导,尾随
视图(内容视图) - 容器中的顶部,底部,前导,尾随,固定高度和水平居中
并在该视图中添加所有其他内容。你会得到理想的结果。它将以小屏幕尺寸滚动,然后滚动内容视图,不会滚动显示更大的屏幕,然后滚动内容视图。
完成此设置后,如果您无法滚动,请检查content view's bottom constraint's constant
中的size inspector
。使其为零(如果无法仅滚动)。
如果您想更深入地了解其他答案中给出的链接,可以使用许多教程
希望这会有所帮助:)