我在我的一个应用程序中使用情节提要,并且在 prepareForSegue 方法中将属性从 SourceViewController 传递到 DestinationViewController 时,传递的属性是通过引用传递而不是通过值传递。这会给我带来一些麻烦,就像在目标视图控制器中一样,如果用户摆弄这些值并点击回来,那么我在我的 SourceViewController 中得到了一个我不想要的更新值。
请参阅以下内容以获取有关此问题的更多信息
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{if([[segue identifier] isEqualToString:@"DestinationView"])
{
DestinationViewController *destinationViewController = [segue destinationViewController];
[destinationViewController setActivity:activity];
//Here the value of activity is passed by reference. I have verified the same by checking the address of activity variable in Variable pane of Xcode in Source and destination view controller
}
现在我不确定在上述情况下如何只传递值而不是引用。