今天搞一下关于tableview的一个效果,cell依次出现在屏幕上
只能直接上代码啦
先简单分析一下需求与思路 cell 依次出现 就是一个一个的出现,那么必然是在cell 出现的函数里面动手脚
- (void)tableView:(UITableView*)tableView willDisplayCell:(UITableViewCell*)cell
forRowAtIndexPath:(NSIndexPath*)indexPath
{
}
这个函数就是cell即将显示时调用,比如 如果cell 的行数是10行
那么这个函数会连续执行十次 然后cell 就显示了
那么如何将cell 一个一个的显示呢 我们可以cell 第一次显示一个
第二次刷新tableview 然后行数++ cell 第二次就是显示2个,依次就是我们要的效果.
那么就要动态改变行数
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return rowcount;
}
这个返回的行数 rowcount 就不能是定制 我们一开始把它定义成1
static NSInteger rowcount = 1;
等每次页面cell 出现完成 rowcount++ 然后刷新tableview
- (void)tableView:(UITableView*)tableView willDisplayCell:(UITableViewCell*)cell
forRowAtIndexPath:(NSIndexPath*)indexPath
{
wiidisplaycellcount++;
if (wiidisplaycellcount < rowcount) {
}else{
[self performSelector:@selector(referencecell) withObject:self afterDelay:0.3];
wiidisplaycellcount= 0;
}
}
- (void)referencecell{
if (rowcount< 10) {
rowcount++;
[self.tableview reloadData];
}
}
wiidisplaycellcount 标示wiidisplaycell函数执行的次数 当wiidisplaycell函数执行的次数和cell的row 一样是 也是他最后依次执行 这时候调用函数- (void)referencecell 让cell 的行数加1 伤心tableview 就OK啦