我有一个故事板,然后按此按钮。在启动控制器之前,我想在StoryBoard上获得控制器的名称。怎么样?
if let foodSearchVC = UIStoryboard(name: "Search", bundle: nil).instantiateViewController(withIdentifier: "FoodSearchViewController") as? FoodSearchViewController {
let searchView = foodSearchVC.searchContainView
transition = Transition(fromView: seatchContainView, toView: searchView ?? UIView())
navigationController?.delegate = transition
foodSearchVC.hidesBottomBarWhenPushed = true
navigationController?.pushViewController(foodSearchVC, animated: true)
}
这个
searchView
是nil
,但是我想获取searchView
最佳答案
您将无法访问foodSearchVC
中的任何子视图,因为尚未创建它们。您只能在foodSearchVC viewDidLoad
之后访问它们。
我相信,您可以在prepareForSegue
方法中完成您需要做的事情,但是,如果您做不到,则可以利用NSNotificationCenter
但是,您似乎正在尝试执行自定义过渡,而您发布的代码并不完全是过渡API的工作方式。
This fantastic SO article显示如何正确执行此操作
关于ios - 我有一个 Storyboard ,然后按此。我想在启动 Controller 之前在 Storyboard 上获得控件的名称。怎么样?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55586341/