iPhone实用程序应用程序,标签文本不会在FLipSideView中更新

时间:2012-04-29 06:12:54

标签: iphone objective-c xcode ios5 uistoryboard

我在Xcode中使用实用程序应用程序模板,主视图和翻转视图。 在主视图中,我有一个名为L0的属性标签。我试图在侧面视图上复制该标签。 在另一方面,我宣布了

@property (weak, nonatomic) IBOutlet UILabel *label;

它在.m文件中合成

@synthesize label = _label;

我的prepareForFegue方法是:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if ([[segue identifier] isEqualToString:@"showAlternate"]) {

     FlipsideViewController *fsv = (FlipsideViewController *)[segue destinationViewController];
     fsv.label = self.L0;
     fsv.delegate = self; 
}}

然而,如果我在prepareForSegue中使用NSLog fsv.label.text,那么flipsideview上标签的文本不会改变,我发现它已正确设置为L0.text的值。

关于我做错了什么的任何想法?

1 个答案:

答案 0 :(得分:4)

在prepareForSegue时,您的目标视图控制器已创建,但视图尚未加载。因此,在加载视图 时,将覆盖分配给标签的任何内容。您可以通过在执行任何操作之前记录label属性来确认这一点 - 它将为零。

目标VC应该有一个字符串属性,您可以在prepareForSegue中使用所需的文本进行设置。然后,在viewWillAppear中从此字符串属性设置标签的文本。

相关问题