UITableView执行顺序及Segue必须要实现的方法
2013-12-09 16:27
489 查看
UITableView的执行顺序一个技巧
花了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]
教训深刻。
花了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]
教训深刻。
相关文章推荐
- Checklists学习日志之UITableView的全部属性、方法以及代理方法执行顺序
- UITableView代理方法执行顺序测试
- 【iOS】UITableView delegate/dataSource方法执行顺序
- UITableView方法的执行顺序
- XZ_iOS之UITableView的代理方法的执行顺序
- UITableView的全部属性、方法以及代理方法执行顺序,看过之后肯定有收获---董鑫
- UItableview全部属性、方法以及代理方法执行顺序
- 调用一个UITableview的一个代理的方法,实现UITableview重载
- UITableView的代理方法不执行的解决方案
- ViewPart的主要方法执行顺序
- 在UITableView中iOS UITableViewDelegate UITableViewDataSource执行顺序
- UITableView 在didSelectRowAtIndexPath 实现双击事件的方法
- UITableView的reloadData方法,不执行cellForRow方法,
- TableView的属性和方法的执行顺序
- viewController 和 tableView 相关方法执行顺序及作用
- UITableView的代理方法viewForHeaderInSection不执行的原因
- UITableView中didSelect方法没有执行的可能原因
- 折叠UITableView分组实现方法
- view的各个回调方法执行顺序
- iOS UITableView:section的Header以及Footer不悬浮停留在屏幕的方法(非在scrollView代理实现的方法)