从 class 获取实例值
Get instance value from a class
我有一个 class:
class MapImage {
var name: String!
var image: UIImage!
init(name: String, image: UIImage) {
self.name = name
self.image = image
}
}
然后我将图像名称和以编程方式创建的图像添加到我的 class MapImage。我调用我的函数
MapImage(name: image_name, image: image)
所以现在我有 image_name
和 image
作为 class 的实例。接下来,我想使用 image_name
从 MapImage
访问 image
。我怎样才能做到这一点?基本上 class 包含成对的 image_name
和 image
。如何使用 image_name
访问 image
?
您描述的是字典和按键访问。因此,将您的 MapImage 实例放入一个字典中,其中键是每个 MapImage 实例的 image_name
,值是 MapImage 实例本身。现在您可以使用名称字符串直接转到所需的 MapImage 实例。
或者,只需将您的 MapImage 实例放入一个数组中,然后循环遍历该数组以查找其 image_name
是您要查找的名称的实例。如果您有大量实例,但只有 3 张图像,则速度会慢一些。您可以使用 filter
实例方法为您执行循环并提取所需的 MapImage 实例(警告,如果您提供错误的名称,此代码将崩溃):
let arr : [MapImage] = // ...
let image = arr.filter{[=10=].name == "MyDesiredName"}[0].image
我有一个 class:
class MapImage {
var name: String!
var image: UIImage!
init(name: String, image: UIImage) {
self.name = name
self.image = image
}
}
然后我将图像名称和以编程方式创建的图像添加到我的 class MapImage。我调用我的函数
MapImage(name: image_name, image: image)
所以现在我有 image_name
和 image
作为 class 的实例。接下来,我想使用 image_name
从 MapImage
访问 image
。我怎样才能做到这一点?基本上 class 包含成对的 image_name
和 image
。如何使用 image_name
访问 image
?
您描述的是字典和按键访问。因此,将您的 MapImage 实例放入一个字典中,其中键是每个 MapImage 实例的 image_name
,值是 MapImage 实例本身。现在您可以使用名称字符串直接转到所需的 MapImage 实例。
或者,只需将您的 MapImage 实例放入一个数组中,然后循环遍历该数组以查找其 image_name
是您要查找的名称的实例。如果您有大量实例,但只有 3 张图像,则速度会慢一些。您可以使用 filter
实例方法为您执行循环并提取所需的 MapImage 实例(警告,如果您提供错误的名称,此代码将崩溃):
let arr : [MapImage] = // ...
let image = arr.filter{[=10=].name == "MyDesiredName"}[0].image