使用自定义渲染器进行慢速Spark列表初始化

时间:2011-06-07 15:54:18

标签: flex flex4.5 itemrenderer flex-spark

我有一个带有customItemRenderer的Spark列表,只用了50个项目就可以用3秒钟进行初始化。

我正在使用Flex 4.5,我的ItemRenderer已经非常优化,使用尽可能少的嵌套,fxg等等。

有人有类似的问题吗? 我已经尝试了书栏中的几乎所有内容都回到了mx。

4 个答案:

答案 0 :(得分:2)

所以问题是由于spark处理样式的方式问题在这里详细说明:http://bugs.adobe.com/jira/browse/SDK-29880并且可以通过猴子修补来排序:http://taytay.com/?p=169 同时删除全局css选择器“*”会有所帮助。

答案 1 :(得分:1)

尽可能避免使用HGroup和VGroup,而是使用绝对布局。我有同样的问题,因为我已经解决了大部分问题。 1个hgroup + 1vgroup每3次= 6个自动布局PER ITEM。总共有150个物体,太多了。

答案 2 :(得分:1)

应用猴子补丁mentioned by Pedro后只有适度的性能提升(我想我们的样式较少,或者性能在最近的补丁中得到修复),我继续分析List实例的初始化。

我发现有一件事是Flex在UIComponent initializeAccessibility函数中花了很多时间,即使我们的应用程序不支持任何方式的可访问性(应用程序是否应该这是一个完全不同的问题。)

仅仅将-accessible=false添加到编译器参数中会将用于初始化特别重的列表的时间减少大约三分之一!不仅如此,整个应用程序在打开窗户,第一次显示控件等时总体上感觉更快,等等。如果您不需要辅助功能支持,您可能需要检查一下 - 如果您这样做,我&#39 ;我确定可以采取措施来修复initializeAccessibility的糟糕表现 - 只需在组件实现中覆盖它,或者通过更多的猴子修补: - )

答案 3 :(得分:0)

您的商品渲染器是否有机会复选框?最近,一些人最近遇到了Spark的一系列性能问题。

http://blogs.adobe.com/aharui/2011/04/migratory-foul-performance-problems-migrating-from-flex-3-x-to-flex-4-x.html

Adob​​e已收到通知,显然正在努力: https://bugs.adobe.com/jira/browse/SDK-29451