我正在使用 Swift 2.0 并创建如下 Controller :
class NewFortuneController: ViewController {
@IBOutlet weak var cupPicture1: UIImageView!
.....
当我在不同的 Controller 时,如何访问和删除 cupPicture1 的图像?
最佳答案
您需要引用 NewFortuneController 才能执行此操作。
如果您正在使用 segues 并且它是您想要更改的目标 Controller ,则可以在 prepareForSegue
中执行此操作
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "some identifier" {
if let controller = segue.destinationViewController as? NewFortuneController {
controller.cupPicture1.image = UIImage(named:"image")
}
}
}
如果源 Controller 拥有图像,则必须在目标 Controller 中设置回源 Controller 的引用。
喜欢:
AnotherController: UIViewController {
weak var sourceController: NewFortuneController?
func setImageForSourceController() {
sourceController?.image = UIImage(named:"image")
}
}
然后在 NewFortuneController 中的 viewWillAppear
上设置 imageViewOutlet 的图像
class NewFortuneController: ViewController {
var image:UIImage?
IBOutlet weak var cupPicture1: UIImageView!
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
cupPicture1.image = image
}
}
关于ios - 在另一个 View Controller 上访问和修改 UIImage 项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33307166/