首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >滚动视图中的动态高度TableView

问滚动视图中的动态高度TableView
EN

Stack Overflow用户
提问于 2015-12-24 04:27:13
回答 2查看 22.1K关注 0票数 22

我正在设计一个具有滚动视图的页面,并在它之上设计一个表视图(禁用滚动)。为此,我在这个问题中提到了答案-- Make UITableView not scrollable and adjust height to accommodate all cells,但没有成功。

视图的层次结构以及提供的约束-

-Main View

-Scroll视图

固定在主视图的所有侧面(0,0,0,0),约束为边距

-Content View

固定在滚动视图(0,0,0,0)上,等宽到主视图,等高到主视图(优先级- 250)

内容视图中的-Table视图

禁用滚动,从四面八方有50个点空间,高度(>=),底部间距50 (关系>=).I设置大于等于,以便动态增加高度。

现在,当我填充我的表视图时,我将代码作为

代码语言:javascript
复制
 func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
    {
        let cell = tableview.dequeueReusableCellWithIdentifier("cellreuse", forIndexPath: indexPath) 
        cell.textLabel?.text = name[indexPath.row]

        tableview.frame.size = tableview.contentSize

        return cell
    }

因此,当我运行我的代码时,它会增加tableview框架,但不会扩展内容大小,只是变得奇怪,因为我的滚动视图没有滚动到表视图的末尾,我的表视图也不遵守自动布局约束。

EN

回答 2

Stack Overflow用户

发布于 2015-12-24 05:17:27

只是我需要这么做-

  • 删除行- tableView.frame.size = tableView.contentSize
  • 为表视图添加高度约束。
  • 将优先级设置为高
  • 创建高度约束(Ctrl+Drag)的出口。
  • 在需要重新加载表数据的地方,将高度约束设置为tableview的内容高度。

​

代码语言:javascript
复制
tableHeightConstraint.constant = tableview.contentSize.height
票数 54
EN

Stack Overflow用户

发布于 2022-07-19 07:12:25

  1. 指定一个表的高度。让它是常数0。
  2. 只需在下面加一行。tableView.heightConstant.constant = CGFloat.greatestFiniteMagnitude tableView.reloadData() tableView.layoutIfNeeded() tableView.heightConstant.constant = tableView.contentSize.height

这样,您就可以轻松地实现表的动态高度。工作在iOS 13,Swift 5。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34447238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档