swift:如何调整表视图的高度以适合超级视图的高度
我有一个viewController,我拖动了tableView,但是当我在tableView中加载数据时,我得到一个滚动条,我想要的是将此tableView扩展到它的高度来填充它的超级视图。我试图通过设置tableView.frame.height = tableView.contentSize.height
在viewDidAppear
设置tableView.frame.height = tableView.contentSize.height
和它的工作,但我没有在超视图滚动,tableView只是扩大和内容是视图,但我不能滚动,我试图把这个tableView里面一个scrollView但仍然是一样的东西,我能做什么?swift:如何调整表视图的高度以适合超级视图的高度
yourTableview.frame =的CGRect(X:0,Y:0,宽度:self.view.frame.size.width,高度:self.view.frame.size。高度)
你这样做基本上什么是调整的tableView的高度是是高度,如果它的内容,而不是屏幕的高度(内容高度比屏幕)放大
表应随身携带scre的高度(或任何你想要的高度),如果你的内容大于你的tableView的框架,它将自动启用滚动。
希望这会有所帮助!
如果你希望你的滚动视图是滚动的,你需要通过动态计算其嵌套组件的高度,以表明其contentSize
:
scrollView.isScrollEnabled = true
scrollView.contentSize = imageView.frame.height + tableview1.frame.height + tableview2.frame.height + netLabel.frame.height
请注意,您可能还需要包括你的利润高度
我只需要我的桌子的高度约束添加为这样@IBOutlet weak var myConstraint: NSLayoutConstraint!
的出口,并在viewDidAppear
你能分享的是什么HAP截图中做
myConstraint.constant = myTable.contentSize.height
pening,所以我可以帮你解决这个问题 – OverD你的表格视图的contentSize最有可能比iPad的屏幕高很多。这就是为什么如果将contentSize分配给表视图的框架,则无法滚动它 - 表视图太高而超出屏幕边界。尝试使用具有类似垂直约束的AutoLayout:'V:| [image] [table] |'。你可以阅读有关AutoLayout视觉格式语言这里https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/AutolayoutPG/VisualFormatLanguage.html –