簡體   English   中英

如何在自定義Flex 4組件中定義自定義“contentGroups”?

[英]How can I define custom 'contentGroups' in a custom Flex 4 component?

例如,火花面板部件可以這樣寫

<Panel title="Skinny">
  <child components ... />
  <controlBarGroup>
    <child control bar components ... />
  </controlBarGroup>

</Panel>

它的外觀文件將處理contentGroup,controlBarGroup和titleDisplay的布局。 請注意,但是contentGroup沒有出現在上面的代碼中,並且controlBarGroup接受子mxml組件。

現在說我想創建一個定義各種必需和非必需skinpart的自定義組件,例如'headerGroup','navigationGroup'和'accountPreferencesGroup'。 我想像這樣編寫這個自定義組件

<MyComp>
<headerGroup>
   <child components .../>
</headerGroup>
<navigationGroup>
   <child components .../>
</navigationGroup>
<accountPreferencesGroup>
   <child components .../>
</accountPreferencesGroup>
</MyComp>

這里的動機是我現在可以創建幾個不同的皮膚文件來改變這些子組的外觀和布局。 讀取spark面板的源代碼,mx_internal命名空間中有一些調用,例如getMXMLContent(),它是spark組件的一個方法,但是我無法訪問它。

上面的描述是否有意義? 如何在我的自定義Flex4組件中創建可以使用嵌套的mxml子組件的自定義“contentGroups”? 我應該采用不同的方式嗎?

我最近碰到了這篇博文。 我相信,它可以很好地解釋你所說的內容。

http://saturnboy.com/2010/07/multiple-content-area-containers/

所以...經過一些工作之后......我發現通過添加以下內容可以使用mx_internal命名空間

import mx.core.mx_internal; 使用命名空間mx_internal;

Adobe使用此命名空間來標記將來可能更改的方法和屬性,以便它們使用此命名空間來隱藏內容。

如果您按照Panel.as中的代碼進行操作,則可以完成此工作並定義您自己的自定義內容區域。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM