UIButton 背景图像不是从单例字典中设置的

UIButton Background image is not set from Singleton Dictionary

再次。

我刚刚用以下代码完成了字典的单例示例 在文件 Recipes.swift

 static let sharedInstance = Recipes()

var imagesOfChef = [Int : chefImages]()
 struct chefImages {
        var objidChef: String!
        var imageChef: UIImage!
    }

当一个过程完成时,我有这个代码

let singleton = Recipes.sharedInstance
singleton.imagesOfChef = self.imagesOfChef

因此 singletonimagesOfChef 具有相同的字典。

在下一个视图中,我想访问词典的所有数据,并使用词典具有的图像之一设置按钮的背景图像。 所以在 cellForItemAtIndexPath 我有以下代码

let test = userPointer.objectId
    let otherReferenceToTheSameSingleton = Recipes.sharedInstance




for i in 0...otherReferenceToTheSameSingleton.imagesOfChef.count - 1  {
    print(otherReferenceToTheSameSingleton.imagesOfChef[i]!.objidChef) //it prints the object id's of the Chef normally

    if otherReferenceToTheSameSingleton.imagesOfChef[i]!.objidChef  == test! {
        print("done")
        print(otherReferenceToTheSameSingleton.imagesOfChef[i]!.imageChef)
        cell.avatarOutlet.setImage(otherReferenceToTheSameSingleton.imagesOfChef[i]!.imageChef, forState: .Normal) //but it doesnt set the Image as a background

    }

}

因此,当 Chef 的对象 ID 与字典中的对象 ID 匹配时,我想将同一行中的图像设置为背景。

但事实并非如此!

虽然当 if statement 正确时,如果您看到我尝试打印图像并且我得到

<UIImage: 0x1582c9b50>, {60, 60}

如何将此图片设置为背景??!?!

非常感谢!

如果以编程方式创建按钮类型,则设置自定义按钮类型

 let button   = UIButton(type: UIButtonType.Custom) as UIButton

如果它来自 Stroyboard,请更改那里的类型。