*** Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:], /Source
来源:互联网 发布:安卓听书软件 编辑:程序博客网 时间:2024/04/28 21:58
*** Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:], /SourceCache/UIKit_Sim/UIKit-3318.16.14/UITableViewRowData.m:619
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'table view row height must not be negative - provided height for index path (<UIMutableIndexPath 0x7fc9a368f0b0> 2 indexes [0, 0]) is nan'
报错原因是 在tableview的heightForRow方法里返回的数据错误,返回的数据是nan型的,为什么是nan呢,猜测可能是数据越界,你可能得到到的是double类型,而heightforrow需要的是CGFloat类型
解决方法:
1.在heightforrow方法里 做出判断
return (!isnan([LDCompanyDynamicCellgetCellHeight]))?[LDCompanyDynamicCellgetCellHeight]:70;
1在数据原始处修改,
+(CGFloat)getCellHeight:(LDCompanyModel *)company{
CGFloat intervalY = 5.0;
CGFloat y;
y+=55+intervalY;
if (company.industry) {
//协会认证
CGSize industrySize = [company.industry sizeWithFont:[UIFont systemFontOfSize:12.0] constrainedToSize:CGSizeMake([UIScreen mainScreen].bounds.size.width-76-10, CGFLOAT_MAX) lineBreakMode:NSLineBreakByWordWrapping];
y+=floor(industrySize.height)+intervalY;
}else{
y+=intervalY;
}
NSLog(@"y1-----%f",y);
y=floor(y);
NSLog(@"y2-----%f",y);
return y;
}
这是获取cell高度,打印的数据
2014-10-09 18:58:39.661 LiuDuSpace[7090:248073] y1-----79.000000
2014-10-09 18:58:39.661 LiuDuSpace[7090:248073] y2-----79.000000
2014-10-09 18:59:36.842 LiuDuSpace[7090:248073] y1-----nan
2014-10-09 18:59:36.842 LiuDuSpace[7090:248073] y2-----nan
第一次和第二次不一样,第一次正确,第二次为nan类型了,
将
CGFloat y=0;这样后,两次打印都正确了
可能是不给它一个初始值,它就不一定给你什么东西。。。
http://en.wikipedia.org/wiki/Uninitialized_variable 可以看看这个
转载:http://blog.csdn.net/wxw55/article/details/39935581
- *** Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:], /Source
- *** Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:], /Source
- 解决 Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:] crash的方法
- Tableview出现Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:]
- Q6:关于xcode TableView使用Nib文件出现Assertion failure in dequeueReusableCellWithIdentifier:forIndexPath:错误
- 使用tableview的时候出现crash:Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:]
- iOS开发之tableView时报错Assertion failure in -[UITableView _configureCellForDisplay:forIndexPath:]
- Assertion failure in -[GPUImageMovieWriter createDataFBO]
- *** Assertion failure in -[UITableView _endCellAnimationsWithContext:]
- Assertion failure in -[UIView layoutSublayersOfLayer:],
- Assertion failure in -[UICGColor encodeWithCoder:]
- *** Assertion failure in -[UITableView layoutSublayersOfLayer:]
- Assertion failure in -[UIView layoutSublayersOfLayer:]
- Assertion failure in -[MASViewConstraint install]
- *** Assertion failure in -[UICollectionViewData validateLayoutInRect:]
- Assertion failure in -[UICollectionView layoutSublayersOfLayer:]
- Assertion failure in -[UITableView layoutSublayersOfLayer:]
- Assertion failure in -[UICollectionViewData validateLayoutInRect:],
- dom4j解析xml
- 数据仓库_多维数据模型
- silverlight 下的模式对话框实现
- Binary Tree Level Order Traversal II
- 我们之间的关系有多脆弱呢,我只要关掉电脑关掉手机,可能你这辈子就再也不会联系到我了。
- *** Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:], /Source
- LeetCode Solutions : Sort List
- 定义的按钮类继承CBUTTON类修改光标显示时不能够正常的修改
- IOS开发之自定义键盘
- 使用Score对文档进行排序
- 济南得了失眠如何治
- 杭电——4391
- x$ kernel service & cache table tips
- VBA中Dictionary对象使用小结