ios - 在另一个 View Controller 上访问和修改 UIImage 项

标签 ios swift uiimage

我正在使用 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/

相关文章:

使用 Core Graphics 的 iPhone 光泽图标

iOS - 如何按顺序执行两个转换?

ios - 我的 MBProgress HUD 和 JSON 方法 - 改进代码的帮助/指导

ios - Collection View 单元格之间的可用空间分布

swift - 每次编译测试目标时运行单元测试

ios - 如何知道 AVSpeechUtterance 何时结束,以便继续应用事件?

ios - 这是运行通用方法的正确方法吗?

ios - 为不同的iphone设置图像并调试

swift - Alamofire validate() 的增强

ios - 在 Swift 中将图像发送到 ViewController 的多个实例