IOS Swift UICollectionView,我想为每个单元格使用不同的标签?

Posted

技术标签:

【中文标题】IOS Swift UICollectionView,我想为每个单元格使用不同的标签?【英文标题】:IOS Swift UICollectionView,I want a different tag for every cell? 【发布时间】:2014-12-12 21:16:28 【问题描述】:

您知道tableviews 可以设置一个数组,然后将数组的每个元素作为row 的文本放置例如:

我有一个tableView

array : items = ["hello","world","yes"]

cellForRowAtIndexPath 函数中,您只需说:cell.text = items[indexPath.row]...这是一个简短的示例。

所以现在是问题所在。我有一个集合视图,它有两列(numberOfItemsInSection 函数返回这个),我有 33 行(numberOfSectionsInCollectionView 函数返回这个)......这意味着我有 @ 987654329@ 单元格。我希望每个单元格在其中显示另一个文本,所以我制作了一个包含 66 个元素的字符串数组“项目”。从位置 0 到位置 65 ......我该怎么做表格视图,只需写cell.text = items[I DON'T KNOW WHAT TO WRITE HERE]...这是我的问题。我不知道如何识别每个单元格,以便彼此不同。 我会指定如果我写:cell.text = items[indexPath.row] 它将在第一列中放入数组的第一项,在第二列中放入数组的第二项,仅此而已。我也试过indexPath.item,但它和indexPath.row一样。

感谢您的帮助!对我有很大帮助!

【问题讨论】:

您的数据是如何排列的?你有一个数组数组或字典数组来填充你的集合视图吗? 【参考方案1】:

只需将您的项目组织到两个数组中,

override func viewDidLoad() 
    super.viewDidLoad()
    self.items1 = ["hello", "word"]
    self.items2 = ["hello2", "word2"]
    self.itemsSections = [items1, items2]

我附上了 UITableView 的示例,但您可以轻松地将其应用于 UICollectionView 数据源协议 然后在表数据源中使用 itemsSections:

override func numberOfSectionsInTableView(tableView: UITableView) -> Int 
    return itemsSections.count


override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int 
    let section = itemsSections[section]
    return section.count


override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell 
    let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as UITableViewCell
    let section = itemsSections[indexPath.section]
    cell.text = section[indexPath.row]
    return cell

【讨论】:

以上是关于IOS Swift UICollectionView,我想为每个单元格使用不同的标签?的主要内容,如果未能解决你的问题,请参考以下文章

Swift5 踩过的坑和奇怪的API笔记

Swift5 踩过的坑和奇怪的API笔记

iOS 7 - UICollectionElementKindSectionHeader 使应用程序崩溃('UICollectionView 数据源未设置')

iOS开发进阶 - 自定义UICollectionViewLayout实现瀑布流布局

Storyboards + UIcollectionView:UI 在 iOS 模拟器和设备上的显示方式不同

iOS集合视图单元格高亮和选中的区别