显示来自 NSObject 的图像

Displaying image from NSObject

我不知道如何将图像添加到 NSObject,然后在 viewController 中显示它。我有一个带有一堆字符串的 NSObject,这些字符串显示在 viewController 的标签中,我想在我通过 storyboard 添加的 UIImageView 中添加一个图像.我怎样才能做到这一点?我真的很困惑如何使用 UIImageUImageView,我已经将图像添加到我的 assets

这是我的 "testing" 代码 - 它不起作用:

@IBOutlet weak var Label1: UILabel!
@IBOutlet weak var Label2: UILabel!
@IBOutlet weak var image: UIImageView!

 class myobject: NSObject {
        var String1 : String
        var String2  : String
        var uiimage : UIImage

        init(String1 : String, String2 : String, uiimage : UIImage
            ) {
            self.String1 = String1
            self.String2 = String2
            self.uiimage = uiimage
        }
    }
 let array = [
        array(String1: "test1", String2: "test2", uiimage: UIImage(named:"Buddha")! 
        ),

   ]

    let range: UInt32 = UInt32(array.count)
    let randomNumber = Int(arc4random_uniform(range))
    let choosen = array[randomNumber]
    let String1c = choosen.String1
    let String2c = choosen.String2
    let imageString = array.uiimage

    self.Label1.text = String1c
    self.Label2.text = String2c

    let imageView =  UIImageView(image: imageString!)
    self.image.image = imageView

谢谢,非常感谢所有的帮助:)

我不是很了解你。如果要将 UIImage(image) 添加到 UIImageView(imageView),只需执行此操作 "imageView.image = image"。这是我更改的测试代码。

import UIKit

class MyObject: NSObject {
    var string1: String
    var string2: String
    var image: UIImage

    init(string1 : String, string2 : String, image: UIImage
        ) {
        self.string1 = string1
        self.string2 = string2
        self.image = image
    }
}

class ViewController: UIViewController {

    @IBOutlet weak var label1: UILabel!
    @IBOutlet weak var label2: UILabel!
    @IBOutlet weak var imageView: UIImageView!

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.

        let myObject = MyObject(string1: "test1", string2: "test2", image: UIImage(named:"Buddha")!);
        let array = [myObject]

        let range: UInt32 = UInt32(array.count)
        let randomNumber = Int(arc4random_uniform(range))
        let choosen = array[randomNumber]
        let choosenStr1 = choosen.string1
        let choosenStr2 = choosen.string2
        let image = choosen.image

        label1.text = choosenStr1
        label2.text = choosenStr2
        // just do this
        imageView.image = image;
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

我觉得你应该看看这个 UIImageView in apple's document