我将 UIView 设置为隐藏在 View Controller (产品菜单)上,然后用户通过 TableView 单元格单击产品。当他们点击返回到初始 View Controller 时,我想让第一个 VC 中的 UIView 可见。
当我使用下面的代码时,出现错误:线程 1: fatal error :隐式解包可选值时意外发现 nil
{
//First View Controller
@IBOutlet weak var basketView: UIView!
.
.
self.basketView?.isHidden = true
<小时/>
//Second View Controller
@IBAction func returnBtn(_ sender: UIButton) {
let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let menuCV = storyBoard.instantiateViewController(withIdentifier: "MenuViewController") as! MenuViewController
menuCV.basketView.isHidden = false
self.present(menuCV, animated: true, completion: nil)
}
}
最佳答案
在 vc 出现/加载之前你无法访问任何 socket ,因为我将为零
选项 1
menuCV.loadViewIfNeeded()
menuCV.basketView.isHidden = false
选项 2
添加 bool 值
menuCV.hideBasket = false
然后将其设置在MenuViewController
的viewDidLoad
内
self.basketView.isHidden = hideBasket
关于swift - 我想从另一个 View Controller 传递 UIView isHidden 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58474314/