Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex 在Flex中更新手风琴儿童的正确方法是什么?_Apache Flex_Flash - Fatal编程技术网

Apache flex 在Flex中更新手风琴儿童的正确方法是什么?

Apache flex 在Flex中更新手风琴儿童的正确方法是什么?,apache-flex,flash,Apache Flex,Flash,现在我在Flex中有一个Accordion组件,它有两个子组件,我想在子组件完成实例化(在Accordion更改索引之后)时给它们一个对我的应用程序模型的引用 以下表示法对我来说失败,因为子项是在触发事件后实例化的(accordionChange方法): 这让我感觉很笨拙,好像我错过了Flex的某个关键部分。我会很感激任何关于我应该如何做这件事的建议,这对我来说似乎是一个反复出现的模式 谢谢,您可以像所有人一样使用createpolicy。在accordion组件中。事实上,我一直认为使用事件监

现在我在Flex中有一个Accordion组件,它有两个子组件,我想在子组件完成实例化(在Accordion更改索引之后)时给它们一个对我的应用程序模型的引用

以下表示法对我来说失败,因为子项是在触发事件后实例化的(accordionChange方法):

这让我感觉很笨拙,好像我错过了Flex的某个关键部分。我会很感激任何关于我应该如何做这件事的建议,这对我来说似乎是一个反复出现的模式


谢谢,

您可以像所有人一样使用createpolicy。在accordion组件中。

事实上,我一直认为使用事件监听器和让对象完成自己的工作是Flex和as的关键概念之一。我认为你现在做的很好,但就像杜赖说的,你可以补充

creationPolicy="all"
打开手风琴,然后您可以启动onchange活动。
例:



顺便说一句,你觉得笨拙的唯一原因可能是因为这不是你最初打算的方式。我知道,当我必须解决某个问题时,我总是觉得自己像个黑客,即使这个解决方案比我的初衷更好。

在MXML中声明模型时,您可以在每个FaceInspector实例中绑定模型

在FaceInspector类(AS3/code-behind)中,确保模型属性是公共的和可绑定的

[Bindable]
public var model:Model;
然后在主MXML中(或在声明FaceInspector实例的任何地方),只需将模型属性绑定到模型

<pod:FaceInspector id="frontFaceInspector" model="{model}" />

我希望这就是你想要的

另外,如果您的FaceInspector实例只需要访问模型的特定属性,那么我建议将这些属性设置为可在模型类中绑定,并直接绑定它们。例如

<pod:FaceInspector id="frontFaceInspector" currentIndex="{model.sceneIndex}" imageURL="{model.image_url}" />

<mx:Accordion id="accordion" color="0x323232" width="100%" height="100%" creationPolicy="all" change="accordionChange(event)">
[Bindable]
public var model:Model;
<pod:FaceInspector id="frontFaceInspector" model="{model}" />
<pod:FaceInspector id="frontFaceInspector" currentIndex="{model.sceneIndex}" imageURL="{model.image_url}" />