swift:如何调整桌面视图的高度以适应超级视图的高度

时间:2017-08-17 18:55:16

标签: ios swift uitableview

我有一个viewController,我拖动了一个tableView,但是当我在tableView中加载数据时,我得到一个滚动,我想要的是将这个tableView扩展到它的高度来填充它的superView。我试图通过在tableView.frame.height = tableView.contentSize.height中设置viewDidAppear来调整tableView的大小并且它工作但是我没有在superView中获得滚动,tableView刚刚扩展并且内容在视图中,但是我不能滚动,我试着将这个tableView放在一个scrollView中,但仍然是一样的,我该怎么办?

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:0)

yourTableview.frame = CGRect(x:0,y:0,width:self.view.frame.size.width,height:self.view.frame.size.height)

基本上你所做的是将tableView的高度调整为高度,如果它的内容而不是屏幕的高度(内容高度大于屏幕)

桌子应该带有屏幕的高度(或任何你想要的高度),如果你的内容大于你的桌面框架,它将自动启用滚动。

希望这有帮助!

答案 1 :(得分:0)

如果您希望滚动视图可滚动,则需要通过动态计算其嵌套组件的高度来指示其contentSize

scrollView.isScrollEnabled = true
scrollView.contentSize = imageView.frame.height + tableview1.frame.height + tableview2.frame.height + netLabel.frame.height

请注意,您可能还必须包含边距的高度

答案 2 :(得分:0)

我只需要将我的表格高度的约束添加为此@IBOutlet weak var myConstraint: NSLayoutConstraint!的插座,以及myConstraint.constant = myTable.contentSize.height中的执行viewDidAppear