我在ViewController中保存图像,并希望在segue期间将其传递给下一个图像,但这样做会导致无限循环。
这是我的代码:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"next"])
{
ReviewViewController *rvc = [segue destinationViewController];
[rvc setFilename:self.filename];
}
}
setFilename
中的ReviewViewController
方法看起来像这样:
- (void)setFilename:(NSString *)filename{
NSLog([NSString stringWithFormat:@"Setting filename to: %@",filename]);
self.filename = filename;
}
当我添加prepareForSegue
方法时,该日志语句会触发ad-infinitum。如果我删除它,转换就可以了。
发生了什么事?
答案 0 :(得分:2)
正如评论中指出的那样,答案是self.filename =
实际上调用了[self setFilename]
,这就是我所谓的方法。
这可以通过重命名我的setFilename
方法或通过_filename =
进行分配来解决。