将ScrollView添加到现有视图
我正在Swift 2.0中开发一个小应用程序。 我有一个具有以下层次结构的视图:
现在,放置在此视图中的元素无法完全显示在其中,因此我想使用ScrollView
以便能够滚动所有内容。
如何将View
所有内容嵌入到新的ScrollView
? 我可以通过代码以编程方式执行此操作吗
更新:有一种更简单的方法可以做到这一点,当我发布这个答案时我不知道
1)转到故事板上的viewcontroller并单击其中的某些内容并按Command + A
这将选择视图中的所有元素。
2)转到Editor -> Embed In -> Scroll View
。 这会将所有标签,视图等嵌入到scrollView中。
3)选择刚刚嵌入的scrollview
。 按Control
并将其拖动到viewcontroller的相应类文件并创建socketsscrollView
。
4)将其添加到viewDidLoad()
scrollView.contentSize = CGSizeMake(self.view.frame.width, self.view.frame.height+100)
确保contentSize的高度大于视图的大小。
手动添加SCROLLVIEW
1)将一个scrollview
从Object Library拖放到storyboard中的viewcontroller
上,并以’scrollView’的forms为程序创建一个sockets。
2)单击您的viewcontroller
并转到尺寸检查器并记下宽度和高度。
3)单击您的scrollview
并将width
和height
设置为与viewcontroller
相同。 并将X
和Y
值设置为0
4)单击scrollView
并将其拖动到侧面
5)按Command+A
选择包括scrollView
在内的所有元素。 按Command
并单击scrollView
以取消选择ScrollView
6)除了现在选择的scrollView
之外,您将拥有所有元素。 现在单击并将它们拖到scrollView中。
7)现在单击scrollView
并从Size Inspector中将X
和Y
值设置为0。
8)将其添加到viewDidLoad()
scrollView.contentSize = CGSizeMake(self.view.frame.width, self.view.frame.height+100)
确保contentSize的高度大于视图的大小。
这应该为您的视图创建一个scrollView。 有些元素的位置可能略有不同 。 你可以通过在storyBoard上移动它们来轻松修复它们。
它甚至可以比ebby94的答案更简单。
1)转到故事板上的viewcontroller并单击其中的某些内容并按Command + A.这将选择视图中的所有元素。
2)转到编辑器 – >嵌入 – >滚动视图。 这会将所有标签,视图等嵌入到scrollView中。
3)将Scroll View的约束设置为View的边缘。
你很高兴去! 不需要sockets。
选择所有元素并嵌入滚动视图(editor-> embed in-> scrollView)工作正常。
通过选择约束警告(添加缺失约束),可以更轻松地添加约束。
我遇到过同样的问题。 我需要将scrollview添加到现有视图。但是我的主容器视图里面有很多视图。 他们彼此联系在一起。 所以我很害怕。 最后我做到了。 下面给出的过程。
-
复制您的视图(根视图)。 首先选择根视图,然后按Command + D.
-
现在删除根视图中的所有子视图视图
-
现在将滚动视图添加到根视图并将约束设置为0,0,0,0
-
现在将副本(您复制的)视图添加到滚动视图并将约束设置为0,0,0,0也设置所需的高度。
-
使用根视图将重复视图的宽度设置为相等宽度。
-
现在选择viewController,转到尺寸检查器,选择自由形状尺寸。 然后使用重复视图设置您输入的高度。
-
你差不多完成了。 现在,您必须将子视图与您在viewController类中提供的sockets或操作相关联。
就这样。