ios - Swift - 根据 REST 数据将图像分配给相应的 ImageView socket

标签 ios swift uitableview uiimageview

这是在我的 viewForHeaderInSection 中。这意味着,这发生在每个部分。

for i in 0..<mySections[section].items!.count {
                print("Valid For \(mySections[section].items[i]).")

                let imagesArray = [header.icon1, header.icon2, header.icon3, header.icon4, header.icon5]  

                imagesArray[i].image = UIImage(named: "IconHamburger")

            }

因此,对于每个部分,我都获得了“适用于”的值。

例如第1节得到

  • 适用于 ABC。
  • 对 PQR 有效。
  • 对 XYZ 有效。

第2节得到

  • 适用于 ABC。
  • 对 XYZ 有效。

等等……

我的问题是如何为 imagesArray 中的图像分配图像名称?条件如 -

如果Valid For是ABC,图像名称是"ImageAbc"

如果 Valid For 是 PQR,图像名称是“ImagePqr”

使用我上面的当前代码片段,我所有的图像导出都被分配了“IconHamburger”。

另外,我的数组中有 5 张图像,“有效”项总是 <= 5。 因此,如果我得到 3 个“适用于”项目,则只需为前三个图像分配图像。

此处部分的当前输出屏幕截图 -

enter image description here

最佳答案

看起来您与您所描述的内容相去不远。也许是这个?

for i in 0..<mySections[section].items!.count {
    let validItems = mySections[section].items[i]
    let imagesArray = [header.icon1, header.icon2, header.icon3, header.icon4, header.icon5]

    // Map your items to your image name formats (ABC -> ImageAbc)
    let validImageNames = validItems.map { "Image" + $0.lowercased().capitalized }

    // Update images in your image array
    validImageNames.enumerated().forEach { index, imageName in

        // Check for index in range
        guard index < imagesArray.count else { return }

        // Update image
        imagesArray[index].image = UIImage(named: imageName)
    }
}

关于ios - Swift - 根据 REST 数据将图像分配给相应的 ImageView socket ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44800137/

相关文章:

ios - Swift 静态表格单元格页脚文本

ios - UIFont:如何使用文体替代字符?

ios - 单击时如何避免单元格分隔符消失

ios - Xcode 实例方法没有从另一个类调用

ios - 如何运行导致框架运行时错误的 iOS 应用程序 "code signature invalid"

ios - 在 View Controller 之间切换

ios - 如何检查访问照片的权限?

ios - 如何在 ios 日历中的 EKEvent 中设置特定的警报?

ios - 如何让按钮根据按下的行显示不同的视频?

ios - 通过 iOS 深层链接传递身份验证 token 是否安全?