如何以编程方式设置滚动视图高度



如何使用 Swift 4 在 Xcode 9 中以编程方式设置滚动视图高度?我为滚动视图高度设置了一个约束,并将其添加为出口。但是当我以编程方式更改出口常量值时,它不会改变高度。

例:

@IBOutlet weak var scrollview_height: NSLayoutConstraint!
override func viewDidLoad() {
super.viewDidLoad()
self.scrollview_height.constant = 245
}

ScrollView的高度应由其内容给出,而不是由您手动更改。充其量,如果你想做这样的事情,你在scrollView里面有一个视图,然后改变该视图的大小。

序渐进:

  • 向视图添加ScrollView。设置约束(无高度或宽度(
  • ScrollView内添加一个View并设置其约束。此外,对于垂直滚动,您可能希望将其宽度设置为等于SuperView并确保其具有高度。
  • 为视图的高度创建IBOutlet
  • 在代码中更新约束的常量值
  • 如果未按预期更新,请在更新后在超级视图上运行layoutIfNeeded

您必须增加滚动视图的内容大小,而不是增加滚动视图的框架。

self.scrollview.contentSize = CGSize(width: screenWidth, height: yourDesiredHeight) 

可滚动内容大小 滚动视图 将据此更改。

最新更新