0

Starsky
回答我正在尝试构建一个视图,其中包含多个水平滚动列表,其中在同一行中填充了 12 个单元格。问题是单元格显示“在同一行的两行中”。为了澄清,该行被分成两行,每行 6 个单元格相互堆叠。

该视图是一个 UITableView,其中每一行都是一个 UITableViewCell。UITableViewCell 有一个具有水平滚动方向的 UICollectionViewFlowLayout。UITableViewCell 包含一个 UICollectionView。UICollectionView 填充有从 UINib(来自 XIB 文件)注册的 UICollectionViewCell:s 列表。

一切都正确加载并且工作正常,但是 UICollectionViewCell:s 在水平滚动列表中堆叠成两行 6 个单元格,每个单元格应该由一行 12 个单元格组成。

我可以包含更多代码,但我不知道问题出在哪里,可能与 dequeueReusableCell 有关,请参阅下面的附加代码?

请注意,我尝试添加奇数个元素。然后上排比下排长一个单元格,像这样。看起来它环绕着两条线。
实际

XXXXXXX
XXXXXX

预期

XXXXXXXXXXXXX

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let item = items[indexPath.row]
        if let cell = tableView.dequeueReusableCell(withIdentifier: HorizontalListTableViewCell.identifier, for: indexPath) as? HorizontalListTableViewCell {
            cell.item = item
            return cell
        }
    }
    return UITableViewCell()
}


预期结果:

XXXXXXXXXXXX

XXXXXXXXXXXX

XXXXXXXXXXXX



实际结果:

XXXXXX
XXXXXX

XXXXXX
XXXXXX

XXXXXX
XXXXXX

其中 X 是可滚动列表中的一个单元格。

4

0 回答 0