【发布时间】:2017-02-17 16:20:02
【问题描述】:
我在视图控制器中有一个容器视图。当用户按下按钮时,Container View 将被显示,但 Container View 上的文本取决于用户按下的按钮。为此,我需要更新容器视图,但我不确定如何执行此操作。
这是我的容器查看代码:
override func viewDidLoad() {
super.viewDidLoad()
Cancel_Button.hidden = true
Save_Button.hidden = true
let Storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let ViewController: View = Storyboard.instantiateViewControllerWithIdentifier("View") as! View
Title_String = ViewController.String
Title_Label.text = Title_String
}
这是我的视图控制器中的代码:
@IBOutlet var View_Controller_Popup: UIView!
var String = String()
override func viewDidLoad() {
super.viewDidLoad()
View_Controller_Popup.hidden = true
}
@IBAction func Button_Pressed(sender: AnyObject) {
let Storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let ViewController: ContainerView = Storyboard.instantiateViewControllerWithIdentifier("Container") as! ContainerView
self.String = "Specific Title"
ViewController.Title_String = self.String
self.View_Controller_Popup.hidden = false
}
那么我该如何重新加载容器视图,以便在按下按钮时,容器视图会根据按下的按钮显示标签文本。
更新:
由于有些人无法理解我遇到的问题,我将用图像重新表述问题。
这是我的观点:
图片已被删除
如您所见,有许多按钮(带有图标)。当用户按下按钮时,我希望容器视图弹出显示信息:
因此,对于每个按钮,标签文本必须不同。但目前在应用程序中,字符串为空白,因此标签文本为空:
我相信这是因为我没有更新容器视图中的代码,所以字符串仍然是空的。
所以问题是容器视图没有正确显示标题标签,我认为这是由于没有更新容器视图,但我实际上不知道如何更新容器视图。
【问题讨论】:
-
如果您使用的是故事板,那么您可以使用嵌入 segue 设置包含的视图控制器。在您包含的 ViewController 中,您可以在
prepareForSegue中获取对包含的视图控制器的引用并寻找嵌入 segue。将引用存储在属性中后,您可以随时在其上调用函数。 -
我正在使用故事板,你能告诉我如何在代码中做到这一点吗?
标签: ios swift uicontainerview