【问题标题】:What's the easiest way of populating a collection view cell's label from an array of strings?从字符串数组中填充集合视图单元格标签的最简单方法是什么?
【发布时间】:2017-04-15 18:24:05
【问题描述】:

假设我有一个字符串数组,例如:["Michael", "James", "Rob"],我想用这些名称填充我的 3 个单元格的文本标题。

我正在使用 UICollectionViewController。

【问题讨论】:

    标签: ios swift xcode uicollectionview


    【解决方案1】:

    你需要实现UICollectionViewDataSource方法如下:

    collectionView(_:numberOfItemsInSection:) 应该返回数组的 count

    collectionView(_:cellForItemAt:) 应该返回一个UICollectionViewCell 类型的单元格,您可以在其中显示正确的项目。您可以使用indexPath.item 获取数组的正确索引。

    【讨论】:

      【解决方案2】:

      您需要为某个对象(可以是UICollectionViewController 本身)实现UICollectionViewDataSource 协议,并将其设置为视图的dataSource 属性。

      类似:

      class MyCollectionViewController: UICollectionViewController, UICollectionViewDataSource {
      
          myDataArray: [String] = ["data", "goes", "here"]
      
          override init(collectionViewLayout layout: UICollectionViewLayout) {
              super.init(layout)
              self.collectionView?.dataSource = self
          }
      
          collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) {
              return myDataArray.count
          }
      
          collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) {
              let item = myDataArray[indexPath.row]
              //use "item" to build your cell
              return myCell
          }
      
      }
      

      【讨论】:

        猜你喜欢
        • 2018-10-31
        • 2010-09-25
        • 1970-01-01
        • 2012-12-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-03
        相关资源
        最近更新 更多