码迷,mamicode.com
首页 > 移动开发 > 详细

iOS开发——错误总结篇&开发中常见错误和警告总结(二十四)

时间:2015-08-28 21:12:33      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:

开发中常见错误和警告总结(二十四)

autolayout在ios8以下出现‘Auto Layout still required after executing -layoutSubviews.‘的bug

 


这次说的这个问题也是年前在调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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!