在集合视图中找到中间单元格并更改其内容

Posted

技术标签:

【中文标题】在集合视图中找到中间单元格并更改其内容【英文标题】:find middle cell in a collection view and change its content 【发布时间】:2018-06-13 08:13:28 【问题描述】:

我的目标是在中间单元格中保留全文,在其他单元格中截断文本,但是随着中间单元格的更改,这种样式不应该改变(意味着中间的一个全文被截断)。

预设:在水平滚动的集合视图中无限滚动,单元格中有标签。

我有 3 个单元格,它们应该看起来像这样 [ 1D ]---[ 1 Day ]---[ 1D ]

【问题讨论】:

如果它无论如何是无限的水平滚动collectionView为什么你会在侧单元格中截断文本?相反,您可以截断单元格(单元格部分出现在侧面),而中心单元格则完全显示。所有单元格都将具有完整的文本,侧单元格将仅部分显示,文本也是如此。如果这就是你需要在 CollectionView 中启用分页来完成这项工作 我有 3 个单元格,它们应该看起来像这样 [ 1D ]---[ 1 Day ]---[ 1D ] 即使您显示 1 天满的单元格,而其他两个单元格部分显示,效果也一样而其他两个单元格部分显示 我不明白你在做什么,可以解释得更清楚 【参考方案1】:

你可以这样做来找到中间的单元格:

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell 
    let cell:UICollectionViewCell = collectionView.dequeueReusableCell(withReuseIdentifier: "CELL_ID", for: indexPath)

    let center = self.view.convert(collectionView.center, to: collectionView)
    let index = collectionView.indexPathForItem(at: center)

    if (indexPath == index) 
        // truncated text
     else 
        // don't truncated text
    

    return cell

【讨论】:

以上是关于在集合视图中找到中间单元格并更改其内容的主要内容,如果未能解决你的问题,请参考以下文章

找到 JTable 单元格并绘制它

Vba找到第一个空单元格并平均它上面的4个单元格并将值粘贴到另一个单元格中

原型单元 - 第一个没有内容视图的单元

具有动态高度的集合视图水平方向

自动选择集合视图的中间可见单元格

集合视图单元格中的集合视图适合内容