例如火花面板组件可以这样写
<Panel title="Skinny">
<child components ... />
<controlBarGroup>
<child control bar components ... />
</controlBarGroup>
</Panel>
它的皮肤文件将处理 contentGroup、controlBarGroup 和 titleDisplay 的布局。但是请注意,contentGroup 没有出现在上面的代码中,并且 controlBarGroup 接受子 mxml 组件。
现在假设我想创建一个自定义组件,它定义了各种必需和非必需的皮肤部件,例如“headerGroup”、“navigationGroup”和“accountPreferencesGroup”。我想像这样编写这个自定义组件
<MyComp>
<headerGroup>
<child components .../>
</headerGroup>
<navigationGroup>
<child components .../>
</navigationGroup>
<accountPreferencesGroup>
<child components .../>
</accountPreferencesGroup>
</MyComp>
这里的动机是我现在可以创建几个不同的皮肤文件来更改这些子组的外观和布局。阅读火花面板的源代码,在 mx_internal 命名空间中有一些调用,例如 getMXMLContent() ,这是火花组组件的一种方法,但我无权访问。
上面的描述有意义吗?如何在可以使用嵌套 mxml 子组件的自定义 Flex4 组件中创建自定义“contentGroups”?我应该以不同的方式解决这个问题吗?