(七十一)关于UITableView退出崩溃的问题和滚动到底部的方法
来源:互联网 发布:javascript获取元素值 编辑:程序博客网 时间:2024/05/11 19:07
【TableView退出崩溃的问题】
最近在使用TableView时偶然发现在TableView中数据较多时,如果在滚动过程中退出TableView到上一界面,会引起程序的崩溃,经过网上查阅和思考我发现这种情况出现在一个UIView控制器拥有一个TableView,TableView无法在UIView销毁前完全销毁,从而继续调用dataSource,而这时候UIView已经不可用了,会引发野指针错误。
避免方法很简单,只需要在UIView的dealloc方法中把dataSource设为nil即可:
- (void)dealloc{ self.tableView.dataSource = nil; }
【TableView滚动到底部】
对于即时聊天等应用,常常需要在新数据到来时把TableView滚动到底部,这个需求可以通过TableView的scrollToRowAtIndexPath::实现,需要传入要滚动到的cell位置和滚动位置。
需要传入indexPath的最后一个位置,也就是要显示的数据数组的最后一个元素的索引,位置为底部,枚举名为
UITableViewScrollPositionBottom,如下:
Tip:一定要注意在没有数据时会造成indexPath.row=-1,此时应当直接返回。
- (void)scrollToTableBottom{ if (_array.count < 1) { return; } NSInteger lastRow = _array.count - 1; NSIndexPath *lastPath = [NSIndexPath indexPathForRow:lastRow inSection:0]; [self.tableView scrollToRowAtIndexPath:lastPath atScrollPosition:UITableViewScrollPositionBottom animated:YES]; }
0 0
- (七十一)关于UITableView退出崩溃的问题和滚动到底部的方法
- iOS-UITableView 滚动到底部和顶部的方法
- iOS-UITableView 滚动到底部的方法
- uitableview 滚动到底部
- uitableview 滚动到底部
- UITableview 滚动到底部
- uiscrollerview 和 uitableview 滚动到底部
- 判断滚动条到底部的方法
- UITableView是否滚动到底部
- UIScrollView ,UITableView 和 UICollectionView 如何滚动到顶部或底部
- 关于UItextView 的一些应用和将uitableview滚动到对应的位置
- ScrollView滚动到底部使用的scrollTo和fullScroll方法的异同
- ScrollView滚动到底部使用的scrollTo和fullScroll方法的异同
- 滚动TextArea中内容到底部的BT方法
- 设置浏览器滚动条到底部的方法
- iPHone 判断UITableView 滚动到底部
- iPhone 判断UITableView 滚动到底部
- iOS UITableView自动滚动到底部
- HttpServletResponse
- Opencv之Mat矩阵赋值小记
- java中++和+=的执行原理有什么不同?
- 在目录及其子目录下寻找匹配的文件的python实现
- android 微信支付,body为中文字符,签名错误
- (七十一)关于UITableView退出崩溃的问题和滚动到底部的方法
- 30多个iOS常用动画,带详细注释
- 详解成员函数的常量性
- Linux_多核系统下绑定进程或线程到指定CPU_核执行
- 书。
- 使用sql语句创建修改SQL Server标识列(即自动增长列)
- SVN使用教程
- Bash启动脚本
- codeforce 7B. Memory Manager