你应该@IBOutlet属性添加到您的UIViewController类。
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