在 Swift 中设置 Child ViewController ScrollView 的高度
Setting Child ViewController Height in ScrollView in Swift
我有 2 个视图控制器,每个控制器都有一个 ScrollView (ViewController A 和 B)。我必须将它们添加到 Parent ViewController (ViewController C) 中作为 child ViewControllers,一个接一个垂直。 Child ViewController 不应独立滚动(应从视图层次结构中删除 ScrollView)。相反,Parent View Controller 应该有一个 scrollView,如图所示。我该如何实现?
我的做法如下:
Child 视图控制器:
- 从 child VC 视图层次结构中删除了 scrollView。
- 将scrollView的子视图直接添加到VC的主视图中。
Parent 视图控制器:
- 已将 child VC 添加到 parent VC。
- 在 Parent VC.
中创建了两个具有固定框架的容器
- 将child VC的视图作为子视图添加到两个容器视图中。 (在 #2 中创建)
问题出在两个容器的固定框架上。如何将它们的高度设置为等于它们各自 child 的视图?另外,如何更新 parent scrollView 的内容大小?
给VCC的scrollview添加一个UIStackview
,添加一个低优先级的任意高度约束。然后将 VC A 和 B 的视图添加到堆栈视图,如果这些视图具有固有大小(由约束引起),堆栈视图将自动缩放,允许在 VC C 中滚动。
我有 2 个视图控制器,每个控制器都有一个 ScrollView (ViewController A 和 B)。我必须将它们添加到 Parent ViewController (ViewController C) 中作为 child ViewControllers,一个接一个垂直。 Child ViewController 不应独立滚动(应从视图层次结构中删除 ScrollView)。相反,Parent View Controller 应该有一个 scrollView,如图所示。我该如何实现?
我的做法如下:
Child 视图控制器:
- 从 child VC 视图层次结构中删除了 scrollView。
- 将scrollView的子视图直接添加到VC的主视图中。
Parent 视图控制器:
- 已将 child VC 添加到 parent VC。
- 在 Parent VC. 中创建了两个具有固定框架的容器
- 将child VC的视图作为子视图添加到两个容器视图中。 (在 #2 中创建)
问题出在两个容器的固定框架上。如何将它们的高度设置为等于它们各自 child 的视图?另外,如何更新 parent scrollView 的内容大小?
给VCC的scrollview添加一个UIStackview
,添加一个低优先级的任意高度约束。然后将 VC A 和 B 的视图添加到堆栈视图,如果这些视图具有固有大小(由约束引起),堆栈视图将自动缩放,允许在 VC C 中滚动。