我对 IOS 开发相对较新,并且在整个应用程序中,我一直在我的视图控制器 segues 之间传递大量信息。我目前正在从云数据库中获取这些数据,我担心随着时间的推移,我将通过我的 segues 传递的数据会随着云数据的增加而增加。在这些 segue 上传递大量数据是不是一个坏主意,如果我最终在这些 segue 上传递相对较大的数组(1,000 到 2,000 个元素),它将如何影响我的应用程序的性能?如果这是一个坏主意,我还能做什么?建议,提示,指针都会很棒。谢谢你
问问题
397 次
2 回答
0
我并没有真正使用故事板,但在谷歌上的快速浏览指出了一些事情:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"showRecipeDetail"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
RecipeDetailViewController *destViewController = segue.destinationViewController;
destViewController.recipeName = [recipes objectAtIndex:indexPath.row];
}
}
于 2013-07-16T08:11:55.663 回答
0
只要您只是将指针传递给 strong/retaining 属性,这不会对性能产生负面影响——只需设置一个指针,对象的外观就无关紧要。
假设这段代码:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"otherSegue"]) {
OtherViewController *destViewController = segue.destinationViewController;
destViewController.dataArray = self.downloadedArray;
}
}
只要属性dataArray
onotherViewController
是 strong 或 Retaining ( @property (strong) NSArray *dataArray;
),该代码的执行时间不应该随着数组的大小而增加,因为只是传递了一个指针。
于 2013-07-16T08:24:57.180 回答