花了3个多小时调试,原来是内部执行顺序的问题,最开始以为一个Item分别挂segue和方法,后来发现一个更加直观的方法,将数据操作写入segue就好了。凡是将segue和按钮方法返回分开写的,会非常麻烦。而且返回时候还要以这种模式返回segue:当前视图---导航视图——原始视图。
晚上又调试一个功能,发现segue,发现个方法,如果有segue,必须要实现:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if([segue.identifier isEqualToString:@"studentDeail"])
{
}
if([segue.identifier isEqualToString:@"addStudent"])
{
}
}
当然,如果这样也是可以的:
- (void)viewWillAppear:(BOOL)animated
{
//NSLog(@"此信息应当刷新");
[self.collectionView reloadData];
}
否则就回抛出异常:[__NSArrayI objectAtIndex:]: index 1 beyond bounds [0 .. 0]
教训深刻。