设置视图控制器实例的UIImageView

时间:2017-03-04 20:15:01

标签: ios swift uiviewcontroller

我目前正在尝试设置我定义的名为MyViewController的UIViewController类的UImageView。在MyViewController类中,我有一个UIImage的出口,如下所示:

@IBOutlet weak var img: UIImageView?

然后我尝试使用:

在另一个类中设置它
let vc:MyViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "test") as! MyViewController

   vc.imgView!.image = UIImage(named: "wonders1.png")

问题是当我强行解包时imgView是零,我不确定为什么因为我实例化视图控制器

我的故事板图片:    https://i.stack.imgur.com/ubpQN.png

错误我得到了:

fatal error: unexpectedly found nil while unwrapping an Optional value

1 个答案:

答案 0 :(得分:0)

您正在尝试将图像添加到尚未初始化的UIImageView实例,在调用func viewDidLoad()函数后,UIViewController实例上的视图仅 加载(有关iOS生活的更多信息,请参阅周期here)。

因此,为了完成您的任务,您应该在MyViewController中实现它:

override func viewDidLoad() {
   super.viewDidLoad()
   vc.imgView.image = UIImage(named: "wonders1.png")
}