iOS - 如何根据特定值将图片设置到ImageView

iOS - How to set image to ImageView according to a specific value

我有几张图片,我想根据我从网络服务获得的特定值来设置我的 ImageView 的图片。

例如,如果我得到值 "dog",我必须设置狗的图像。

所有图片都在我的 xcassets 库中。

我应该为此做一个 Switch 吗?或者有更好的方法吗?

如果 Web 服务 returns 与您的资产中使用的名称相同,那么您可以直接使用返回的名称作为要使用的图像的名称,如下所示:

let newImage: UIImage? = UIImage(named: imageName) // imageName is the name returned to you by the web service.
self.myUIImageView.image = newImage

假设您正在从 Web 服务获取 "dog" 值,并且您将 "dog" 图像保存在 .xcassests 文件夹中,那么您可以简单地使用相同的名称来指定图像名称。理想情况下,在 .xcassets 文件夹中创建来自服务器的相同图像名称以正确映射图像。

假设您有模型作为数据结构和 imageName 属性 存储图像名称

struct Data {
  let imageName: String
}

let imageName = data.imageName //"dog"
imageView.image = UIImage(named: imageName)