UIImageView的预期声明

时间:2018-11-07 20:20:29

标签: swift uiimageview

编辑:我意识到为什么我被viewdidload弄糊涂了。本练习的目的是与更改正在显示的图像一起工作,而我只是在玩代码以测试其是否显示。现在,我将解决问题的代码放在一起,对发生的事情有了更清楚的了解。

class ViewController: UIViewController {

    @IBOutlet weak var imageView: UIImageView!

    override func viewDidLoad() {
        super.viewDidLoad()
    }
    @IBAction func btnNext(_ sender: Any) {
        imageView.image = UIImage(named: "husky")
    }

我无法将图像加载到单视图IOS应用中。这是我的代码:

class ViewController: UIViewController {

    @IBOutlet weak var imageView: UIImageView!

    imageView.image = UIImage(named: "shiba")

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

}

但是我一直收到“预期的声明”错误。到目前为止,使它起作用的唯一方法是在viewDidload方法中包含imageView.image声明。

1 个答案:

答案 0 :(得分:0)

imageView.image = UIImage(named: "shiba")放入viewDidLoad()函数中。

swift类由一系列声明组成。这些声明可以是变量,可以是常量,函数,ext。因此,当您将imageView.image = UIImage(named: "shiba")直接放在类中时,swift希望该行声明一些内容(var,let,func)。通过将您的语句放在viewDidLoad()内,您说该语句应在调用viewDidLoad()时执行。当所有插座都连接好并且在用户对视图不可见之前,将调用viewDidLoad(),这是为您的情况设置图像视图的好时机。