[英]Can't set the properties for the next view using prepareForSegue: sender:
我正在使用Objective-C。 我将表视图单元格中的segue设置为新的视图控制器,并想使用此方法设置新视图控制器的属性:
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString: @"detail"]){
if([segue.destinationViewController isKindOfClass:[detailViewController class]]){
detailViewController *detail = (detailViewController *)segue.destinationViewController;
detail.label.text = @"QQQQQ";
}
}
我已经将segue的标识符设置为@“ detail”,并且还将标签代码与情节提要中的视图控制器相连。 但是,当我在模拟器中运行该标签时,标签将永远不会更改。
在调用prepareForSegue
时,尚未设置destinationviewcontroller的出口。
您要做的是在detailViewController
类中创建一个属性,例如
@property (copy, nonatomic) NSString *detailText;
然后在prepareForSegue
:
detailViewController *detail = (detailViewController *)segue.destinationViewController;
detail.detailText = @"QQQQQ";
在你的detailViewController
的viewDidLoad
:
self.label.text = self.detailText;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.