Apache flex ListItemRenderer中的Flex按钮栏是否冻结应用程序?

Apache flex ListItemRenderer中的Flex按钮栏是否冻结应用程序?,apache-flex,itemrenderer,Apache Flex,Itemrenderer,我偶然发现了一个奇怪的情况——在ListItemRenderer中插入一个按钮栏冻结应用程序。这种虫子繁殖能力很强 如果有人知道一个工作区,那将不胜感激:) 下面是一些代码: <s:VGroup id="buttonHolder" visible="false" gap="0" width="100%"> <s:ButtonBar id="buttonMenu" width="100%" height="18" minWidth="100" change="

我偶然发现了一个奇怪的情况——在ListItemRenderer中插入一个按钮栏冻结应用程序。这种虫子繁殖能力很强

  • 如果有人知道一个工作区,那将不胜感激:)
下面是一些代码:

<s:VGroup id="buttonHolder" visible="false" gap="0" width="100%">
        <s:ButtonBar id="buttonMenu" width="100%" height="18" minWidth="100" change="buttonMenuChangeHandler(event)">
            <s:dataProvider>
                <s:ArrayList>
                    <fx:Object label="rename"  icon="@Embed(source='assets/images/rename.png')"/>
                    <fx:Object label="delete"     icon="@Embed(source='assets/images/delete.png')"/>
                    <fx:Object label="group +" icon="@Embed(source='assets/images/group_pluss.png')"/>  
                </s:ArrayList>
            </s:dataProvider>
        </s:ButtonBar>
    </s:VGroup>
</s:VGroup>

“火花树”基于火花列表,但ListItemRenderer是一个mx组件。别把这两个混在一起。改用Spark ItemRenderer


Spark和mx组件具有完全不同的体系结构,因此请尽量避免将它们混合在一起,尤其是使用列表及其ItemRenderer等耦合组件。如果您决定使用Spark组件集,请尽可能广泛地使用它,除非没有其他方法(例如AdvancedDataGrid)。我想这是您的初衷,因为您似乎不想使用mx:Tree。

您使用此ListItemRenderer的是Spark还是mx列表?您的问题引用了ListItemRenderer类;但是你的代码没有。请提供完整代码。它位于Spark Tree()内。(Flex 4.5).mx:Tree是如此的有缺陷,以至于每次试图扩展更多的树节点都会导致一个无法绕过的缺陷。所以我没有选择就离开了,去了星火树|我的一个朋友Yordan昨天在github上发布了他的博客。我还没有机会使用它。我现在结束这个主题(原因:不断降低接受评级:|),因为Spark和MX之间只有一点不兼容。无论如何,如果有人知道一个更好的方式去与它-让张贴在这里。重新打开它。@Yordan很不清楚你想要实现什么。如果将您提供的代码放入Spark ItemRenderer并将其分配给Spark列表,那么它将完美地工作。您是否有任何理由绝对希望使用mx:ListItemRenderer?如果在树类中而不是在列表类中使用ItemRenderer时产生错误,那么它就是该树类中的错误(您可以尝试提到的@J_a_X)。在冻结应用程序后,有一段时间可以正常工作。它是随机发生的,除了它之外,没有别的东西在起作用。只要开始快速点击,旋转一点treerenderer内的组件,它就会发生,但这是随机的。