あなたのUIViewControllerクラスに@IBOutletプロパティを追加する必要があります。
class YourViewController: UIViewController {
@IBOutlet weak var label: UILabel! // link it with UILabel in the storyborad.
}
その後、あなたはUILabelへのアクセス持つことができます:
if let page = UIStoryboard().instantiateViewController(withIdentifier: "features_view_controller") as? YourViewController {
page.label //your label, which is currently nil, because the view controller still does not draw view.
}
をしかし、あなたはアップデートが必要な場合、例えば、ラベルテキストは、その後、あなたは、「データ転送オブジェクト」を作成し、それを渡す必要がありますあなたのビューコントローラに。ビューが読み込まれた後、UILabelを更新することができます。以下の例:!
class YourViewController: UIViewController {
@IBOutlet weak var label: UILabel!
var text: String? //text for label.
override func viewDidLoad() {
super.viewDidLoad()
label.text = text
}
}
if let page = UIStoryboard().instantiateViewController(withIdentifier: "features_view_controller") as? YourViewController {
page.text = "Test"
//show page (present or push view controller) or manually send command for drawing view (page.view)
}
するvarラベル=ページ.nameOfUrLabel –
あなたは簡単にオプションがあなたのViewControllerに@IBOutletを作成し、それをアクセスすることであろう、識別子でラベルにアクセスすることはできません。 – suhit