某天,加完一个功能,在iPhone4上报以上异常,然后crash掉,iPhone3上没事。百思不得其解,于是google之。看了一篇stackoverflow.com 的文章,说是某些地方代码除以0了,多见于自定义的UITableView自定义UITableViewCell高度的地方,如:tableView:heightForHeaderInSection: 或tableView:heightForFooterInSection:。
小弟愚笨,还是想不通,这两个delegate方法都没有地方需要除的。在仔细看一下文章,说多见于适用sizeWithFont方法计算UILabel宽高的地方。恍然大悟,小弟有一个地方使用了UILabel来显示文本,需要用到sizeWithFont方法计算宽高的,在NSString为nil的时候,sizeWithFont会除以了。
哈,解决之,内牛满面。
本文记录了一次在iPhone4上遇到的CALayerInvalidGeometry异常,并详细解释了解决过程。异常源于UILabel在字符串为空时调用sizeWithFont方法导致的除零错误。
1万+

被折叠的 条评论
为什么被折叠?



