在swift 3中是否可以在tableview单元中实现tableview?

qncylg1j  于 2023-01-08  发布在  Swift
关注(0)|答案(2)|浏览(169)

我有麻烦把一个tableview单元格内的一个tableview。现在我要实现的意见和答复。和答复应该在其中你要评论。所以我要实现的意见张贴在tableview单元格内,在它答复所有的意见在其他tableview单元格。任何建议或其他方式来实现这些方案!

mwkjh3gx

mwkjh3gx1#

此问题重复,请快速回答

第一次接近:

1.为子tableView创建一个子类并覆盖intrinsicContentSize。

class MyOwnTableView: UITableView {
    override var intrinsicContentSize: CGSize {
        self.layoutIfNeeded()
        return self.contentSize
    }

    override var contentSize: CGSize {
        didSet{
            self.invalidateIntrinsicContentSize()
        }
    }

    override func reloadData() {
        super.reloadData()
        self.invalidateIntrinsicContentSize()
    }
}

1.在接口构建器中,将子tableView的类更改为MyOwnTableView(UITableView的子类)。
1.设置父表视图和子表视图的自动行高。

tableView.estimatedRowHeight = 60.0;
    tableView.rowHeight = UITableViewAutomaticDimension;

**第二种方法:**1.使用子tableView的任意值创建高度约束,并连接设置子tableView高度的IBOutlet。2.将高度约束的常量设置为tableView.contentSize.height

self.tableViewHeight.constant = self.tableView.contentSize.height
fhg3lkii

fhg3lkii2#

是的,这是可能的,但不是一个推荐的实现方式。如果你想显示下面的回复,每个职位沿着评论,我建议你通过部分实现。每个部分应该有三种类型的单元格如下所述:

  • 后单元格视图
  • 回复单元格视图
  • 注解单元格视图

在这种情况下,节数将是职位数,每个节的总行数将是1(职位)+ N(其中N是答复总数)+1(评论)。
使用这种方法,您可以通过苹果提供的动画添加/删除回复,这很容易实现。
我希望这对你有帮助,如果你有任何顾虑,请随时询问。

相关问题