没有TableView的StackView中的UITableViewCell

时间:2018-09-28 17:52:05

标签: ios swift uitableview

我有一个tableView(A),在一个单元格(B)中,我想加载另一个单元格(C)。我开始在该单元格(B)中创建一个tableView(D),并在该tableView(D)中包括该单元格(C)。

视觉解释:

enter image description here

但是我读到将tableView放在另一个内部并不是一个好习惯,因此我要删除tableView(D)并尝试使用stackView。我将在第一个单元格(B)中包含一个StackView,其中将包含其他单元格(D和其他单元格)。

有可能吗?我尝试过:

    let cellView = Bundle.main.loadNibNamed(someCell.identifier, owner: self, options: nil)?[0] as? UIView
    stackView.addArrangedSubview(cellView!)

但是在我看来,该单元格没有显示。有没有其他方法可以在不创建新tableView的情况下在另一个单元格中使用此方法?这是一个好习惯吗,还是我应该在单元格(B)中创建tableView(D)?

2 个答案:

答案 0 :(得分:2)

不要那样做。

表视图单元格不能在表视图之外使用,并且如果尝试这样做,所有选择都将关闭。

世界上为什么要使用不属于表格视图的表格视图单元格?

答案 1 :(得分:1)

UITableViewCell仅用作UITableView的子视图。

相反,您应该考虑将单元格C 类更改为UIView的子类,而只需将其添加为contentView的子视图>单元格B 或作为UIStackView的排列子视图。

相关问题