如何从 UICollectionView 的另一个类中的函数加载图像?我正在使用油漆代码

Posted

技术标签:

【中文标题】如何从 UICollectionView 的另一个类中的函数加载图像?我正在使用油漆代码【英文标题】:How to load an image from a function in another class in UICollectionView? I'm using paint code 【发布时间】:2017-08-09 01:17:08 【问题描述】:

我有一个集合视图,它必须加载单元格的内容,但我不想使用资产中的图像。因此,我创建了一个带有 Paint Code 的类,它为我绘制了一些图像。但是,我不知道如何使用 dequeueReusableCell 在我的 UICollectionView 单元格中加载绘制代码为我绘制的图像。

【问题讨论】:

【参考方案1】:

我将以TableView 为例,但UICollectionView 也是一样的...

创建UICollectionViewCell 的子类。 在这个例子中,我称它为ItemCell

class ItemCell: UITableViewCell ... 

创建和配置.xib 文件。 此文件布置您的单元格,并包含一个代表您的 PaintCode 可绘制对象的 UIView

在 Storyboard 中,将您的 UICollectionViewCells 的类设置为您的自定义子类(在本例中为 ItemCell)。 这里的关键是给它一个标识符,所以它可以是dequeued:

重用自定义单元格的代码示例:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 
    var cell = UITableViewCell()

    // Constants.itemCellName matches the above identifier.
    if let itemCell = tableView.dequeueReusableCell(withIdentifier: Constants.itemCellName) as? ItemCell 
        configure(itemCell, at: indexPath)
        cell = itemCell
    

    return cell

利润:

【讨论】:

以上是关于如何从 UICollectionView 的另一个类中的函数加载图像?我正在使用油漆代码的主要内容,如果未能解决你的问题,请参考以下文章

UICollectionView 布局,带有用于 SearchBar 的部分标题和用于标题的另一个动态部分标题

如何将 UICollectionViewCell 从一个 UICollectionView 拖到另一个 UICollectionView?

如何从 UICollectionView 中弹出一个 uicollectionViewCell?

如何在 iOS 中更新 collectionView?

如何快速从 UICollectionView 中的 UIView 中删除焦点阴影?

将点击行为重定向到 UICollectionViewCell 中的另一层