Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:], /Source

一、app

*** Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:], /SourceCache/UIKit_Sim/UIKit-3600/UITableViewRowData.m:485ide

本人遇到此問題是由於爲了適配 iOS11 增長的代碼,也在其餘 iOS 版本中添加而形成的,只要作下面處理便可:spa

if #available(iOS 11.0, *) {
    //適配iOS11的代碼
}

 

二、code

*** Assertion failure in -[UISectionRowData refreshWithSection:tableView:tableViewRowData:], /SourceCache/UIKit_Sim/UIKit-3318.16.14/UITableViewRowData.m:619blog

 

*** 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'it

 

報錯緣由是  在tableview的heightForRow方法裏返回的數據錯誤,返回的數據是nan型的,爲何是nan呢,猜想多是數據越界,你可能獲得到的是double類型,而heightforrow須要的是CGFloat類型io

 解決方法:table

在height for row方法裏 作出判斷,若是height == nan 就設置默認高度class

 第二個問題本人並無遇到,在找尋答案時發現有人遇到過上面問題就集中放一塊兒。exception

相關文章
相關標籤/搜索