您好我正在开发IOS应用程序。我有一个集合视图。点击集合视图的单元格我打开一些新数据的控制器。在这种情况下,首次尝试打开带有一些新数据的新控制器。但是当回到前一个控制器并再次单击任何单元格时,它会给出空数组的错误。这意味着它正在释放这些数据。我按照以下方式尝试了它:
@property(retain, nonatomic) NSMutableArray *relatedArrayList;
assign values in .m file
on click on cell prepare for segue like this ...
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if([[segue identifier] isEqualToString:@"selfDetailSegue"])
{
MediaDetailViewController *mediaDetails = [segue destinationViewController];
NSIndexPath *indexPath = [[_collectionView indexPathsForSelectedItems] lastObject];
mediaDetails.videoData = [_relatedArrayList objectAtIndex:indexPath.row];
}
}
第一次工作正常。但当我来点击另一个单元格时,它会出现以下错误
Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array'
如何在这种情况下保留这些值?我做错了什么?需要一些帮助。谢谢。
答案 0 :(得分:-1)
重新启动或分配arraylist,分配值并重试。