最近,我一直在构建一个需要 ScrollView 的应用程序,以适应所有内容。我在创建 ScrollView 时遇到了一些困难。我已经尝试了几种不同的方法来构建它,但最终还是在 Storyboard中使用自动布局构建了它。我已将 View Controller 的高度设置为 1000,因此模拟大小也设置为自由形式。 ScrollView 中内容 View 的宽度,我必须与包含 ScrollView 的 View 相同。
层次结构是这样的:
- -查看 Controller 场景
- -顶部布局指南
- -底部布局指南
- -查看
- - ScrollView
- -内容 View
- -在此处添加文本标签
- -约束
- -等等
我一直在复制此链接中的过程,以创建 ScrollView : https://www.ralfebert.de/snippets/ios/auto-layout-recipes/uiscrollview-storyboard/
在模拟器上运行应用程序时,我得到以下结果: ScrollView 在 iPad 上无法正常工作。看起来 ScrollView 不适应宽度的变化,当它在 iPad 上运行时会发生这种情况,因为它更大。当应用程序在 iPad 上运行时, ScrollView 的宽度与在 iPhone 上显示的一样。
这是它在编辑器中的样子。左边的 View Controller 是实现了 ScrollView 的 View Controller ,右边的没有。第一张图是我用 iPhone 8 查看的 Storyboard,第二张图是我用 9.7"iPad 查看的:
如果有人能给我一些提示,我将不胜感激!
最佳答案
- 将
UIScrollView
添加到您的主视图 - 将顶部、左侧、右侧、底部约束全部设置为零
- 在 ScrollView 中添加一个
UILabel
- 将行数设置为零
- 将顶部、左侧、右侧、底部约束全部设置为零
- 设置标签的宽度约束等于 ScrollView 的宽度
应该可以了:)
这将使标签的文本与 ScrollView 的顶部对齐。如果您添加的文本足以填满整个屏幕,它将垂直滚动。
关于ios - 在 xcode(iOS) 中, ScrollView 在 iPad 上无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47695782/