Apache flex 列表在flex中创建时已损坏
我创建了一个自定义控件,它在标题下方包含一个HeaderBox和list控件。我可以使用header click事件打开和关闭列表,即list.height=0和list.height=200。最初,列表将处于关闭状态高度=0。当我们第一次打开它的时候。这需要太多的时间。对于同一列表的连续打开看起来更平滑,我想这是因为itemrenderer正在被重用。我想第一次顺利地打开列表。有人请帮忙吗Apache flex 列表在flex中创建时已损坏,apache-flex,Apache Flex,我创建了一个自定义控件,它在标题下方包含一个HeaderBox和list控件。我可以使用header click事件打开和关闭列表,即list.height=0和list.height=200。最初,列表将处于关闭状态高度=0。当我们第一次打开它的时候。这需要太多的时间。对于同一列表的连续打开看起来更平滑,我想这是因为itemrenderer正在被重用。我想第一次顺利地打开列表。有人请帮忙吗 我已经为列表控件创建了自己的渲染器,它在HBox中包含一个5组合框。这听起来确实像是在重新创建下拉列表,
我已经为列表控件创建了自己的渲染器,它在HBox中包含一个5组合框。这听起来确实像是在重新创建下拉列表,但是第一次加载列表花费的时间太长,原因是它没有创建项目渲染器。列表控件在任何给定的时间仅创建其内适合的尽可能多的项呈现器。由于从高度=0开始,不会创建任何项目渲染器,因此第一次更改高度将强制创建和验证所有项目渲染器 若要解决此问题,请让列表在创建时创建并维护其项目呈现器 创建列表并将其高度保留为200,但将其可见性设置为false。即使具有虚假可见性,列表仍会在显示列表上创建、验证和维护。添加用于显示和隐藏列表的效果,作为列表的showEffect和hideEffect样式,然后只需单击标题切换可见即可 只需将按钮用作除简单标签之外的其他内容的下拉项呈现器
<mx:VBox verticalGap="0">
<mx:HBox click="list.visible = !list.visible">
<s:Label text="click me"/>
</mx:HBox>
<mx:List id="list" height="200" visible="false" labelField="label">
<mx:dataProvider>
<s:ArrayCollection>
<fx:Object label='Button 1' />
<fx:Object label='Button 2' />
<fx:Object label='Button 3' />
<fx:Object label='Button 4' />
<fx:Object label='Button 5' />
<fx:Object label='Button 6' />
</s:ArrayCollection>
</mx:dataProvider>
<mx:itemRenderer>
<fx:Component>
<mx:Button />
</fx:Component>
</mx:itemRenderer>
<mx:showEffect>
<s:Fade alphaFrom="0" alphaTo="1" duration="1500"/>
</mx:showEffect>
<mx:hideEffect>
<mx:Fade alphaFrom="1" alphaTo="0" duration="1500" />
</mx:hideEffect>
</mx:List>
</mx:VBox>
您应该显示一些代码。为什么要使用Flex3?你为什么要做高度=0和高度=200?visible=false和visible=true还不够好?听起来你好像在试图重新创建DropDownList。若有,;为什么?此外,在这里不可能提供任何帮助而不查看您的代码。