有两个带有嵌入式导航控制器的视图控制器。第一个有一个桌子视图。第二个名为“AfterTableViewController”的标签中有一个标签。在故事板中的视图控制器之间传递数据
我想能够在第一个视图控制器实现文件中的prepareForSegue
方法中设置标签。
-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
AfterTableViewController *afc = (AfterTableViewController*) segue.destinationViewController;
afc.title = @"the title"; // this works
afc.theLabel.text = @"hello"; // this doesn't work
}
我应该如何设置标签?
这似乎工作。我在AfterTableViewController .h文件中创建了一个字符串属性,并在prepareForSegue中为其分配了一个值。然后在AfterViewController的viewDidLoad方法中,我使用该字符串的值更新了标签的文本。我只是困惑,为什么我不能改变标签的价值,除了做这个伎俩。也许因为它'弱'和我定义的字符串属性是'强'。任何建议? – Milad
在执行的时候,据我所知,这个IBOutlet到你的UILabel仍然是零,这就是为什么没有发生。尽管如此,我不会说这是一个窍门,但这是传递数据的一种非常正常的方式。 –