将子视图添加到scrollview

时间:2015-11-24 05:25:01

标签: ios objective-c swift

我正在尝试将子视图添加到我在视图控制器中的滚动视图中:

let size:CGSize = self.view.bounds.size;
self.scrollview.contentSize.width = size.width

pageMenu = CAPSPageMenu(viewControllers: controllerArray, frame: CGRectMake(0.0, self.tableView.frame.origin.y + 130, size.width, size.height), pageMenuOptions: parameters)

self.scrollview.addSubview(pageMenu!.view)

它的工作范围是它将它添加到我想要的正确位置和高度。但由于某种原因,现在它只将扩展到屏幕宽度的大约60%(我需要全屏显示)。

我尝试过的事情

1)将其设置为self.view.frame.width

2)将其设置为另一个全屏元素的宽度。

3)将其设置为UIScreen.mainScreen()。bounds

我检查了故事板中scrollview的约束,并将其配置为全屏...所以我不确定为什么这不会起作用。

2 个答案:

答案 0 :(得分:0)

此问题与需要设置到滚动视图的约束有关。我回答了similar question here。基本上,您需要为滚动视图的内容视图宽度指定约束。有关详细说明,请参阅上面链接中的答案。问题是即使在我们为滚动视图提供适当的约束之后,scrollview也会将其大小调整为其内容视图的大小。因此,我们需要针对scrollview及其superview指定滚动视图的内容视图的约束,以便scrollview中的内容符合我们的要求。

答案 1 :(得分:0)

我注意到的一件事是,在你的CGRectMake代码中,你指定你的y origin是tableViews y value + 130.这对我来说似乎是个问题。