sim*_*dam 14 css3 hardware-acceleration ios ios6
我在iOS6 UIWebView组件中的滚动性能不佳时遇到了问题.但是在iOS5中滚动非常流畅.所以我在网上搜索了一下,发现了这个(iOS6 beta changelog的一部分).
WebKit不再总是使用-webkit-transform:preserve-3d选项为元素创建硬件加速层.作者应该停止使用此选项作为获得硬件加速的方法.
这可能是原因,因为我的应用程序显示的html网站使用了大量的css3转换..请有任何人的解决方案或建议如何强制webview切换回加速渲染模型?
除了已经提到过的(也没有)触发硬件加速的CSS属性的变化之外,我注意到iOS6上的另一个变化并没有在iOS5上持续存在(或者至少我之前没有注意到): 在两者之间重叠硬件加速元素和非加速元素将减慢渲染和应用程序很多.
如果加速和非加速元素之间有任何重叠,请确保将硬件加速添加到其他元素,即使它们没有动画也是如此,因为它们将被重新渲染,这将完全压制或在某些元素中案件恢复加速效果.
如果你想查看它,我还写了一篇关于这个的简短文章:http: //indiegamr.com/ios6-html-hardware-acceleration-changes-and-how-to-fix-them/
小智 5
如果使用3D变换(例如-webkit-transform: translateZ(0)),UIWebView仍会执行硬件加速.如果你只使用它就不再适用-webkit-transform-style: preserve-3d.
如果您有一个进行3D变换的示例,但在iOS 6中速度较慢,则应在Apple的Bug Reporter上报告.