繁体   English   中英

使用另一个 ViewController Swift XCode 中的按钮隐藏 imageView

[英]Hiding an imageView using a button in another ViewController Swift XCode

我需要在 Swift 中使用 ViewControllerOne 中的按钮隐藏 ViewControllerTwo 中的 ImageView。

我如何在另一个 ViewController 中使用“imageView.hidden = true”?

请问有什么帮助吗? 谢谢

在你的按钮函数中试试这个(在 viewController1 中):

@IBAction func yourButtonFunction(_ sender: AnyObject){
let defaults = UserDefaults.standard
defaults.set(true, forKey: "isImageHidden")
}

在 viewController2 中,添加以下内容:

override func viewDidAppear(){
     super.viewDidAppear(true)
     if UserDefaults.standard.value(forKey: "isImageHidden") != nil{
          let condition = UserDefaults.standard.value(forKey: "isImageHidden") as! Bool
          if condition{
              //should be hidden
              self.imageView.isHidden = true
              UserDefaults.standard.set(false, forKey: "isImageHidden")
          }
     }
}

让我知道这是否有帮助!

您不应该尝试从另一个视图控制器更改一个视图控制器的视图。 那是糟糕的设计。 相反,您应该使要隐藏其图像的视图控制器具有委托属性。 创建一个委托协议来定义其他视图控制器调用的消息。 这是一种非常常见的设计模式,您应该学习。

网上有很多教程展示了委托设计模式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM