IOS -- 调用deleteRowsAtIndexPaths:withRowAnimation:崩溃的问题
2016-06-16 14:44
453 查看
本文是集合了大神们的解答,仅用于自己的记载和查看
运行
报错
经过无头绪的查询看到了这些个解决方案
一、
二、
还是没有解决根本问题 最后的最后
发现原来我删的是section 换一下方法就好了
运行
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationRight];
报错
NSInternalInconsistencyException', reason: 'Invalid update: invalid number of rows in section 0. The number of rows contained in an existing section after the update (1) must be equal to the number of rows contained in that section before the update (1),
经过无头绪的查询看到了这些个解决方案
一、
[dataArr removeObjectAtIndex:indexPath.section];//这句是肯定要有的 [tableView beginUpdates]; [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationRight]; [tableView endUpdates];
二、
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForRow:indexPath.row inSection:0]] withRowAnimation:UITableViewRowAnimationNone];
还是没有解决根本问题 最后的最后
调用deleteRowsAtIndexPaths:withRowAnimation:withRowAnimation: 后如果tableView:numberOfRowsInSection返回的行数不是删除前-1则会crash,同样删除最后一行导致numberOfSectionsInTableView返回值跟调用前不一样而crash。解决方法,调用deleteRowsAtIndexPaths:withRowAnimation:时判断是不是该section最后一行,如果时则同时调用deleteSections:indexSetWithIndex:withRowAnimation:
发现原来我删的是section 换一下方法就好了
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法
- iOS应用开发中AFNetworking库的常用HTTP操作方法小结
- iOS应用中UISearchDisplayController搜索效果的用法
- iOS App开发中的UISegmentedControl分段组件用法总结
- IOS开发环境windows化攻略
- iOS应用中UITableView左滑自定义选项及批量删除的实现
- iOS中UIAlertView警告框组件的使用教程
- 浅析iOS应用开发中线程间的通信与线程安全问题
- iOS中的UIKeyboard键盘视图使用方法小结
- 检测iOS设备是否越狱的方法
- .net平台推送ios消息的实现方法