UITableView的重用机制
2014-07-01 10:22
253 查看
UITableView是ios开发中使用率极高的一个控件,就我个人来说,几乎我做的每一个View上都有她的身影。但是很长一段时间,我对她的理解都很肤浅。对我来说触动较大的两个东西,一个是前面提到的自定义UITableViewCell,再有就是今天要提的这个复用了。
所谓复用表面意思来理解就是重复利用了。大致的工作原理就是:UITableView属于lazy loading,也就是只加载会在界面上显示的部分。举个例子,比如说UITabeview的调试是460,咱们每个Cell的调试是230,这样的话,手机界面上最多就显示两个Cell,当你向上划动,第一个Cell一些离开界面,第三个Cell的一些出现在界面的时候会再创建第三个Cell。注意关键部分到了,再第二个Cell开始离开界面,第四个Cell出现的时候,这时候不会创建第四个Cell,而是直接复用的第一个Cell!也就是说无论你的UITableView里有十条或者三十条数据,只会创建三个Cell来展示这些数据!
简单演示一下:
tableview 一屏最多现实11条数据,但是创建了12条cell哦!
总的来说,这种工作机制很合理,无论从CPU和内存的角度考虑都很节省资源!
亲,你理解了吗?
所谓复用表面意思来理解就是重复利用了。大致的工作原理就是:UITableView属于lazy loading,也就是只加载会在界面上显示的部分。举个例子,比如说UITabeview的调试是460,咱们每个Cell的调试是230,这样的话,手机界面上最多就显示两个Cell,当你向上划动,第一个Cell一些离开界面,第三个Cell的一些出现在界面的时候会再创建第三个Cell。注意关键部分到了,再第二个Cell开始离开界面,第四个Cell出现的时候,这时候不会创建第四个Cell,而是直接复用的第一个Cell!也就是说无论你的UITableView里有十条或者三十条数据,只会创建三个Cell来展示这些数据!
简单演示一下:
#pragma mark- tableview UITableViewDataSource - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return 20; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCellStyle style = UITableViewCellStyleSubtitle; static NSString *cellID = @"cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID]; if (cell == nil) { cell = [[UITableViewCell alloc] initWithStyle:style reuseIdentifier:@"cell"] ; cell.detailTextLabel.text = [NSString stringWithFormat:@"Cell %d",++count]; //当分配内存时标记 } cell.textLabel.text = [NSString stringWithFormat:@"Cell %d",[indexPath row] + 1]; //当新显示一个Cell时标记 return cell; }
tableview 一屏最多现实11条数据,但是创建了12条cell哦!
总的来说,这种工作机制很合理,无论从CPU和内存的角度考虑都很节省资源!
亲,你理解了吗?
相关文章推荐
- UItableView的重用机制
- ios UITableView中Cell重用机制导致内容重复解决方法
- UITableView的禁用重用机制
- 操蛋的UITableView重用机制
- (iphone/ipad)关于uitableview自定义cell与重用机制探究
- (iphone/ipad)关于uitableview自定义cell与重用机制探究(由于文章写的太好,直接转帖备用)
- UITableView中Cell重用机制导致内容重复解决方法
- 浅谈UITableView重用机制
- iOS学习笔记(4)— UITableView的重用机制
- UITableView的重用机制
- 关于uitableview自定义cell与重用机制探究
- UITableView的重用机制原理
- iOS UITableView的重用机制
- 解决UITableView中Cell重用机制导致内容出错的方法总结
- UITableView中Cell重用机制导致内容出错的解决方法
- 解决UITableView中Cell重用机制导致内容出错的方法总结
- UITableView的重用机制
- ios UITableView中Cell的重用机制
- UITableView的重用机制
- UITableView中Cell重用机制导致内容重复解决方法