Ios 压倒一切;准备赛格“;以编程方式创建UIViewController时
我有一个Ios 压倒一切;准备赛格“;以编程方式创建UIViewController时,ios,swift,uiviewcontroller,swift4,uistoryboardsegue,Ios,Swift,Uiviewcontroller,Swift4,Uistoryboardsegue,我有一个UIView,在它里面我正在创建一个UIViewController: class TopBarView: UIView { var viewController: UIViewController?{ didSet{ print("a") } } 在我的代码后面,我将使用以下命令执行segue: if let vc = viewController { vc.performSegue(withIdentifier: "im
UIView
,在它里面我正在创建一个UIViewController
:
class TopBarView: UIView {
var viewController: UIViewController?{
didSet{
print("a")
}
}
在我的代码后面,我将使用以下命令执行segue
:
if let vc = viewController {
vc.performSegue(withIdentifier: "imagesSegue", sender: nil)
}
我希望将一些参数传递给我正在执行的segue
to的UIViewController
我试图在viewcontroller
的定义中添加一个“prepare for segue”定义,因此它看起来如下所示:
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
这个
应位于分配给var viewController:UIViewController?
的vc内,并使用sender
参数发送任何数据
vc.performSegue(withIdentifier: "imagesSegue", sender:"someStr")
注意:如果vc是以编程方式创建的,则不能使用segue
类TopBarView:UIView
它来自UIView,而不是UIViewController,因为UIView没有声明它,所以您没有覆盖它。类TopBarView:UIView
它来自UIView,而不是UIViewController,因为UIView没有声明它,所以您没有覆盖它。