我已经创建了一个从一个VC到另一个VC的segue(从VC拖动到另一个VC),并称之为RegisterUserSegue,它是一个Push segue,我的所有视图控制器都嵌入在导航控制器中。 我这样称呼segue:
[self performSegueWithIdentifier:@"RegisterUserSegue" sender:self];
并且在performSegueWithIdentifier
中我设置了每次调用segue时调用的NSLog,但viewController不会更改。
修改:
但是,如果我注释掉- (void)performSegueWithIdentifier:(NSString *)identifier sender:(id)sender
方法,一切正常。
这是方法:
- (void)performSegueWithIdentifier:(NSString *)identifier sender:(id)sender {
NSLog(@"Called");
}
帮助? 谢谢!
答案 0 :(得分:4)
通过实现prepareForSegueWithIdenitifer
,您已经在UIViewController中使用不执行任何操作的方法(写入日志除外)覆盖了默认实现。
你可以使用 -
- (void)performSegueWithIdentifier:(NSString *)identifier sender:(id)sender {
[super performSegueWithIdentifier:identifier sender:sender];
NSLog(@"Called");
}
但您通常不会覆盖此方法。如果要将属性传递到目标视图控制器,可以使用prepareForSegue:sender: