我需要一个UIScrollView和一个containerView来滚动我创建的内容。我对这2项的代码是:
var scrollView = UIScrollView()
var darkener = UIView()
var container = UIView()
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.clearColor()
darkener = UIView(frame: self.view.frame)
darkener.backgroundColor = UIColor.blackColor()
darkener.alpha = 0.0
self.view.addSubview(darkener)
scrollView.frame = self.view.bounds
scrollView.backgroundColor = UIColor.clearColor()
scrollView.contentSize = CGSizeMake(scrollView.frame.width, scrollView.frame.height+1)
scrollView.delegate = self
self.view.addSubview(scrollView)
container = UIView(frame: CGRectMake(0, scrollView.frame.height, scrollView.frame.width, scrollView.frame.height))
container.backgroundColor = UIColor.whiteColor()
container.layer.masksToBounds = true
container.layer.cornerRadius = 10
scrollView.addSubview(container)
}
问题是,一旦我将Y设置为scrollView.frame.height,容器视图就不会出现在屏幕上(它位于底部),但在以前的VC中,代码可以工作完美。
此外,它不允许我滚动内容。那有什么不对?
如果有必要,我可以上传实现,但我认为这没有问题。
答案 0 :(得分:0)
解决。我只需将它放在ViewDidLoad的末尾来声明de frame:
textField是我在屏幕上的最终标签,用于声明屏幕的限制。
self.container.frame = CGRectMake(0, self.container.frame.origin.y, self.container.frame.width, textField2.frame.origin.y + textField2.frame.height - 60)
self.scrollView.contentSize = CGSizeMake(self.container.frame.width, self.container.frame.height + 20.0)
现在工作正常。