我有一个UIView
,在其中创建了一个UIViewController
:
class TopBarView: UIView {
var viewController: UIViewController?{
didSet{
print("a")
}
}
在我的代码后,我正在使用segue
:
if let vc = viewController {
vc.performSegue(withIdentifier: "imagesSegue", sender: nil)
}
我希望将一些参数传递给我正在执行UIViewController
的segue
。
我尝试在viewcontroller
的定义内添加“准备进行搜索”定义,因此看起来像这样:
class TopBarView: UIView {
var viewController: UIViewController?{
didSet{
print("a")
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
}
}
但是,我遇到了错误-这样的事情可能无法完成。
如何将所需参数传递到新的UIViewController
中?
此
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
/////
}
应该在您分配给var viewController: UIViewController?
的vc内,并使用sender
参数发送任何数据
vc.performSegue(withIdentifier: "imagesSegue", sender:"someStr")
注意:如果以编程方式创建vc,则不能使用segue