我的应用程序包含一个表单,该表单作为UIScrollView的子视图呈现给用户。窗体视图由FormViewController控制。 UIScrollView占据整个屏幕。表单视图的高度为800点,宽度等于屏幕宽度。我想将窗体70%放在屏幕底部,让用户看到滚动视图下方的图像。表单视图包含使用AutoLayout约束的标签,文本字段和其他视图。表格的背景是白色的。
但是,当我将表单视图添加为子视图时,标签会显示在主表单区域上方,背景不是白色的区域中。这就是我用来将表单视图添加到Swift中的UIScrollView:
NSInteger
结果如下:
当我只使用presentViewController()呈现FormViewController时,一切都很好:
func setUpForm() {
self.formContentHeight = 0
self.formContentHeight += CGFloat(Int(UIScreen.mainScreen().bounds.size.height * 0.7))
var form:FormViewController = self.storyboard?.instantiateViewControllerWithIdentifier("formviewcontroller") as! FormViewController
form.view.frame = CGRectMake(0, self.formContentHeight, self.formContentWidth, 800)
self.formScrollView.addSubview(form.view)
self.formContentHeight += 800
self.formScrollView.contentSize = CGSizeMake(self.formContentWidth, self.formContentHeight)
}
结果:
这是Storyboard中的FormViewController:
这里可能会发生什么?