itemrenderers prepare()函数有什么作用?

时间:2013-01-21 06:16:49

标签: actionscript-3 flex

重写IGridItemRenderer.prepare()功能并做一些事情。

override public function prepare(hasBeenRecycled:Boolean):void
{
  cb.selected = grid.selectionContainsIndex(rowIndex);//cb is CheckBox itemrenderer
}

当这个准备函数调用时?多少次?它有什么作用? 调试时我注意到这个方法被不断调用, 通过覆盖此方法是否存在任何性能问题?

1 个答案:

答案 0 :(得分:2)

在flex中,项目渲染器由框架自动构建,销毁和回收。它尝试回收以前未使用的对象以节省资源。

当项呈示器受到新行,单元格,对象......的影响时,将调用prepare。

您可以使用它来初始化一些标签,字段......

如果在调试中你注意到“连续调用”,可能是因为以下工作流程:   - 项目获得焦点,框架调用prepare()   - 您的IDE在方法中停止,然后您的应用程序失去焦点   - 一旦你完成调试,你的应用程序重新获得焦点,然后调用prepare方法,   - 等等......

在权威中,要么使用绑定到{data.myFields}来在数据对象受到影响时自动显示值(通过prepare方法静默),否则重写此方法以准备一些显示属性。

在表现方面,一切都应该是相似的。

HIH