Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何使UICollectionView在Swift中从底部加载新单元_Ios_Swift - Fatal编程技术网

Ios 如何使UICollectionView在Swift中从底部加载新单元

Ios 如何使UICollectionView在Swift中从底部加载新单元,ios,swift,Ios,Swift,我有一个collectionview来显示评论列表,但我希望单元格从底部开始显示,这是一种在WhatsApp和Telegrame iOS应用程序中看到的模式(新消息从底部开始并向上填充),如下图所示。 我在网上搜索,但找不到有效的东西。 我在下面的一个答案中尝试了这段代码,但效果并不理想 let contentSize = collectionView.collectionViewLayout.collectionViewContentSize if contentSize.heigh

我有一个collectionview来显示评论列表,但我希望单元格从底部开始显示,这是一种在WhatsApp和Telegrame iOS应用程序中看到的模式(新消息从底部开始并向上填充),如下图所示。

我在网上搜索,但找不到有效的东西。 我在下面的一个答案中尝试了这段代码,但效果并不理想

let contentSize = collectionView.collectionViewLayout.collectionViewContentSize
    if contentSize.height > collectionView.bounds.size.height {
        collectionView.contentOffset = CGPoint(x: 0, y: contentSize.height - collectionView.bounds.size.height)
    }

如何实现这一点?

您需要转换您的收藏及其单元格。使用以下代码旋转集合视图:

yourCollectionView.transform = CGAffineTransform.init(rotationAngle: (-(CGFloat)(Double.pi)))
对于以下代码中的单元格使用:

cell.transform = CGAffineTransform(rotationAngle: CGFloat.pi)

对于那些不想使用图形解决方法来解决模型问题的人,只需在自定义
UICollectionViewFlowLayout
中重写
layoutAttributesForItem
函数,就可以添加计算高度的空单元格作为第一个单元格。或者,在演示之前,将表格(旋转)180度,并将每个单元格(旋转)180度(tableView(u:willDisplay:forRowAt:))。事实上,我很久以前就为一个较小的项目做过这件事。:)你查过我的答案了吗?它对你有用吗?在展示之前,你可能还必须转换每个单元格(对于你必须转换的表-不确定集合视图)@RJE是的,你是对的,还需要转换单元格。更新了我的答案之类的作品。但是现在新的细胞被添加到了早期细胞的顶部而不是底部。。。我该如何解决这个问题?@OluwatobiOmotayo你在collectionView上应用了转换吗?@OluwatobiOmotayo你是如何添加新单元格的?