将子视图添加到UIScrollView陷入自动布局

时间:2016-04-23 12:16:35

标签: ios swift uiscrollview autolayout

我的视图设置如下: enter image description here 这里有标签,薄视图表示分隔线,滚动视图表示屏幕底部,一个视图表示模糊,最后一个视图带按钮。模糊视图和按钮视图位于滚动视图上,滚动时不会改变位置。

我也有自定义视图,我在单独的xib中创建。所以我试图以编程方式在scrollview中添加其中的n个。

我是这样做的:

let tmp:NSArray = NSBundle.mainBundle().loadNibNamed("sourceButton", owner: self, options: nil)
self.button = tmp.objectAtIndex(0) as? UIButton
self.scrollView.addSubview(button!)
self.scrollView.contentSize = CGSizeMake(UIScreen.mainScreen().bounds.size.width, self.scrollView.contentSize.height + 50);

并在viewDidLayoutSubviews()中更改框架:

self.button!.frame = CGRectMake(UIScreen.mainScreen().bounds.width*0.05, 20, UIScreen.mainScreen().bounds.width*0.4, 100)

问题在于,当我添加多个自定义视图时,顶部标签会从屏幕上移开,并且所有ui都会轻微移动。

使用一个customView

使用两个customView

在viewWillLayoutSubviews和viewDidLayoutSubviews之间的帧更改如下:

我做错了什么?

0 个答案:

没有答案