如何在容器视图中的嵌入表视图中更改变量? Swift
How to Change Variable in embed TableVeiw in ContainerView? Swift
class MyView:UIViewController{
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
print(segue.destination)
let distinationVC = segue.destination as? MyTableController
distinationVC?.topConstaints.constant = 0
}
}
class MyTableController: UIViewController, UITableViewDataSource, UITableViewDelegate {
@IBOutlet weak var topConstaints: NSLayoutConstraint!
}
return
print(segue.destination)
<myApp. MyTableController:0 x>
但在
中引发异常
distinationVC?.topConstaints.constant = 0
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
我做错了什么吗?
我不知道如何解决这个问题
在 prepare(for segue:)
中访问 topConstaints
将无法工作,因为尚未创建控制器视图。
在 MyTableController
中创建一个 CGFloat
变量,然后在 viewDidLoad
中更改 topConstaints
或在 let distinationVC = ..
之后立即调用 let _ = distinationVC.view
以触发distinationVC 的 loadView
.
class MyView:UIViewController{
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
print(segue.destination)
let distinationVC = segue.destination as? MyTableController
distinationVC?.topConstaints.constant = 0
}
}
class MyTableController: UIViewController, UITableViewDataSource, UITableViewDelegate {
@IBOutlet weak var topConstaints: NSLayoutConstraint!
}
return
print(segue.destination)
<myApp. MyTableController:0 x>
但在
中引发异常distinationVC?.topConstaints.constant = 0
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
我做错了什么吗?
我不知道如何解决这个问题
在 prepare(for segue:)
中访问 topConstaints
将无法工作,因为尚未创建控制器视图。
在 MyTableController
中创建一个 CGFloat
变量,然后在 viewDidLoad
中更改 topConstaints
或在 let distinationVC = ..
之后立即调用 let _ = distinationVC.view
以触发distinationVC 的 loadView
.