I made an app for iOS 8 which uses grouped UITableView
for one of its page. There are multiple sections in it that uses CGFloat.leastNormalMagnitude
(or CGFloat.min
in Swift 2 and below) for section header and footer height to remove the "default" space. Everything went well until the app run in iOS 9 and 10, where it crashes with this error:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'section header height must not be negative - provided height for section 0 is -0.00000'
Somehow, any value under 1
(except the rounded 0
) is treated as a negative - and using 1
as return value will make the header / footer space appears again.
Is there any workaround to fix this?
Thanks in advance.
I have tried several values for the tableView(_:heightForHeaderInSection:)
, and found out that:
leastNormalMagnitude
and leastNonzeroMagnitude
will be treated as minus (hence the crash).I ended up using 1.1
for solving my problem.
Hope this will help someone out there!