并非所有单元格都显示在CollectionViewController Swift中

问题描述 投票:0回答:1

我正在开发一个周期表,并显示我正在使用集合视图的表。周期表有118个元素,我试图在同一页面显示它们,但是当我在模拟器上运行应用程序时,只显示了77个单元格。 app screen

这是我在Swift文件中使用的代码:source code

我想知道如何在同一屏幕上显示所有单元格。我在网上搜索但我找不到任何东西。

ios swift xcode uicollectionview
1个回答
0
投票

步骤:1。首先计算周期表中的项目或元素的数量,即将整个框架划分为网格,以查看有多少个小方框。

  1. 现在为你的元素创建一个模态,比如第一个项目Hydrogen,它进入[Datamodel]数组0索引,而对于下一个16数组元素它的空对象因为没有元素..以这种方式创建你的模态
  2. 现在创建你的collectionview单元格并用你的模态填充数据,其中数据是空白对象显示黑色图像,对于有元素的那些,分别显示
  3. 现在,对于每个元素的大小,有一个UICollectionViewDelegateFlowLayout方法 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: IndexPath) -> CGSize { let width = self.collectionview.frame.size.width/18 as there are 18 columns return CGSize(width: width, height: width) }

这样,所有单元格都将在水平视图中可见..但是再次所有单元格在横向模式下可能都不可见,例如58,59的元素

所以你需要做的每个元素的高度

let height = height/9 as there are 9 rows

但是这样,你。可能不会得到方形单元格

© www.soinside.com 2019 - 2024. All rights reserved.