如何删除移动设备 Spark 列表表单中的项目渲染器?
我有一个带有自定义 mxml itemRenderer 的 Spark ListForm, itemRenderer 的全部内容是:
<s:Label text="{data.name}" />
当我运行探查器时,列表表单不会重新使用 itemRenderer, 实例不断增加, 我使用 arrayCollection 作为数据提供者。 我什至调用 dataprovider (arrayCollection) .removeAll() 和 显示变为空白,但 itemRenderer 的实例数量却显示为空白 不下去。然后我在分析器中运行垃圾收集器,然后 项目渲染器仍然保留在内存中。如何从内存中删除 itemRenderers?
I've got a spark ListForm with a custom mxml itemRenderer,
all the itemRenderer has is:
<s:Label text="{data.name}" />
When I run the profiler, the listform is not re-using the itemRenderers,
the instances keep going up and up,
I'm using an arrayCollection as the dataprovider.
I even call the dataprovider (arrayCollection) .removeAll() and the
display goes blank, yet the number of instances of the itemRenderer does
not go down. I then run the garbage collector in the profiler, and the
item renderers still stay in memory. How can I remove the itemRenderers from memory?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您只想将标签作为项目渲染器,那么在移动应用程序中建议使用
LabelItemRenderer
if you just want a label as an item renderer then in mobile applications it's recommended to use the
LabelItemRenderer
将 itemRenderer 设置为 null。当 GC 下次运行时,内存中的项目渲染器将被删除。
Set the itemRenderer to null. When GC next runs, the item renderers in memory will be removed.