UITableView - beginUpdates和endUpdates

转载 2015年11月17日 19:29:16

1. beginUpdates方法和endUpdates方法是什么呢?
这两个方法,是配合起来使用的,标记了一个tableView的动画块。
分别代表动画的开始开始和结束。
两者成对出现,可以嵌套使用。
一般,在添加,删除,选择 tableView中使用,并实现动画效果。
在动画块内,不建议使用reloadData方法,如果使用,会影响动画。


如果我们的UITableView是分组的时候,我们如果删除某个分组的最后一条记录时,相应的分组也将被删除。所以,必须保证UITableView的分组,和cell同时被删除。
所以,就需要使用beginUpdates方法和endUpdates方法,将要做的删除操作“包”起来。


2.什么时候使用

  1. 一般在UITableView执行:删除行,插入行,删除分组,插入分组时,使用!用来协调UITableView的动画效果。  
  2.   
  3. 插入指定的行,  
  4. 在执行该方法时,会对数据源进行访问(分组数据和行数据),并更新可见行。所以,在调用该方法前,应该先更新数据源  
  5. - (void)insertRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation  
  6.   
  7. 插入分组到制定位置  
  8. - (void)insertSections:(NSIndexSet *)sections withRowAnimation:(UITableViewRowAnimation)animation  
  9. 插入一个特定的分组。如果,指定的位置上已经存在了分组,那么原来的分组向后移动一个位置。  
  10.   
  11. 删除制定位置的分组  
  12. - (void)deleteSections:(NSIndexSet *)sections withRowAnimation:(UITableViewRowAnimation)animation  
  13. 删除一个制定位置的分组,其后面的分组向前移动一个位置。  
  14.   
  15. 移动分组  
  16. - (void)moveSection:(NSInteger)section toSection:(NSInteger)newSection  
  17. 移动原来的分组从一个位置移动到一个新的位置。如果,新位置上若存在某个分组,那这某个分组将会向上(下)移动到临近一个位置。该方法,没有动画参数。会直接移动。并且一次只能移动一个分组。  
  18.   
  19. 在如上方法中,建议使用该动画块进行操作!  

关于tableView你不知道的那些事

UITableView是工程开发中最经常使用到的UI控件,但是你真的了解它嘛,这里记录几点有用的但你可能并不知道的。*当我们的数据未能显示满一屏幕的时候,UITableView会显示多余的横线,这个时...
  • u013705509
  • u013705509
  • 2016年04月07日 16:27
  • 1585

iOS:UITableView 方法 属性 详解

--简介:一个ta ============
  • houseq
  • houseq
  • 2014年07月31日 22:02
  • 14876

iOS中关于UItableview中代理heightForRowAtIndexPath调用次数和顺序的系统差异性

关于heightForRow和cellForRow方法的调用次数和顺序的系统差异性 经试验发现在iOS7和iOS8中UITableView的委托方法: -(CGFloat)tableV...
  • zhonggaorong
  • zhonggaorong
  • 2015年11月04日 09:58
  • 4164

UITableView的beginUpdates和endUpdates

我们在做UITableView的修改,删除,选择时,需要对UITableView进行一系列的动作操作。 这样,我们就会用到  [tableView beginUpdates]; ...
  • u013263917
  • u013263917
  • 2014年03月17日 13:17
  • 858

beginUpdates和endUpdates 实现UITableView的动画块

我们在做UITableView的修改,删除,选择时,需要对UITableView进行一系列的动作操作。 (以下是删除动画效果) 这样,我们就会用到 - (void)tableView:(...
  • LIN1986LIN
  • LIN1986LIN
  • 2014年03月31日 14:42
  • 2766

uitableview beginupdates 和endupdates 的使用

1. beginUpdates方法和endUpdates方法是什么呢? 这两个方法,是配合起来使用的,标记了一个tableView的动画块。 分别代表动画的开始开始和结束。 两者成对出现,可以嵌...
  • zhaoyya
  • zhaoyya
  • 2015年10月10日 10:01
  • 439

iOS UITableView 的beginUpdates和endUpdates

在官方文档中是这样介绍beginUpdates的 Call this method if you want subsequent insertions, deletion, and selectio...
  • Chowbindeblog
  • Chowbindeblog
  • 2016年08月05日 14:58
  • 408

beginUpdates和endUpdates-实现UITableView的动画块

我们在做UITableView的修改,删除,选择时,需要对UITableView进行一系列的动作操作。 这样,我们就会用到  [tableView beginUpdates]; ...
  • wangzhaobin
  • wangzhaobin
  • 2015年04月08日 16:21
  • 372

beginUpdates和endUpdates---实现UITableView的动画块

我们在做UITableView的修改,删除,选择时,需要对UITableView进行一系列的动作操作。 这样,我们就会用到  [tableView beginUpdates];       ...
  • oqqQuZi1234567
  • oqqQuZi1234567
  • 2013年05月19日 12:59
  • 1091

UITableView beginUpdates和endUpdates-实现UITableView的动画块

我们在做UITableView的修改,删除,选择时,需要对UITableView进行一系列的动作操作。 这样,我们就会用到  [tableView beginUpdates]; ...
  • chengkaizone
  • chengkaizone
  • 2016年03月21日 11:42
  • 362
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UITableView - beginUpdates和endUpdates
举报原因:
原因补充:

(最多只允许输入30个字)