标签:
这次说的这个问题也是年前在调bug的时候出现的 由于开发一直是在ios8上进行的 所以一路顺风顺水没有任何问题 直到有一天 一个同事拿着他的ios7.x的iphone5S要我帮忙装一个最新的开发版 然后使用过程中就出现了闪退 一查就是如题的错误log
Auto Layout still required after executing -layoutSubviews.
- (void)layoutSubviews { [super layoutSubviews]; // code to scroll the view
}
还有另一种方法是使用swizzle method 替换layoutSubviews的默认行为 本质上也是一样的解决思路
但是 无论怎么尝试都没有办法解决我的问题 经过自己的摸索之后 终于得出了解决
其实问题出现的原因(或者说解决的方法)很简单也很蛋疼
以UITableView为例 导致这个问题出现的原因是因为我在tableView上add了一个自定义的subview(对 就这么简单) 那么解决问题的方法就是把这个subview给去掉
同样的问题也出现在了UITextfield上 同样去掉subview就ok了(其他的原生控件上暂时没有做类似布局 所以是否其他控件也有类似问题不得而知 如果大家遇到了这种问题 可以尝试查看一下是否有自定义的subview)
具体的原因我也无法深究 但应该是在ios7之前的autolayout本身存在着缺陷所导致 ios8后修复了这些问题(stackoverflow上很多人是这么说的)
iOS开发——错误总结篇&开发中常见错误和警告总结(二十四)
标签:
原文地址:http://www.cnblogs.com/iCocos/p/4767723.html