2010-05-12 14 views
6

Thành phần bảng điều khiển tia lửa ví dụ có thể được viết như thế nàyLàm cách nào để xác định 'các nhóm nội dung' tùy chỉnh trong một thành phần Flex 4 tùy chỉnh?

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

</Panel> 

Và tập tin da của nó sẽ xử lý bố cục của contentGroup, controlBarGroup, và titleDisplay. Thông báo, tuy nhiên rằng contentGroup không xuất hiện trong mã ở trên và rằng controlBarGroup chấp nhận các thành phần mxml con.

Bây giờ nói rằng tôi muốn tạo một thành phần tùy chỉnh xác định các skinparts được yêu cầu và không bắt buộc khác nhau, chẳng hạn như 'headerGroup', 'navigationGroup' và 'accountPreferencesGroup'. Tôi muốn viết thành phần tùy chỉnh này như thế này

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

Động lực ở đây là bây giờ tôi có thể tạo một vài tệp da khác nhau để thay đổi giao diện và bố cục của các nhóm con đó. Đọc nguồn của bảng điều khiển tia lửa, có một số cuộc gọi trong không gian tên mx_internal như getMXMLContent() là một phương pháp của thành phần nhóm tia lửa, nhưng tôi không có quyền truy cập vào.

Mô tả ở trên có hợp lý không? Làm thế nào tôi có thể tạo 'content groups' tùy chỉnh trong thành phần Flex4 tùy chỉnh của tôi có thể sử dụng các thành phần con mxml lồng nhau? Tôi có nên tiếp cận điều này theo một cách khác không?

+0

Tôi vừa tìm thấy liên kết sau khá gần với những gì tôi đang cố gắng đạt được. http://forums.adobe.com/thread/575569?tstart=1 – swidnikk

Trả lời

0

... Vì vậy, sau khi điều làm việc thông qua một chút ... Tôi thấy rằng nó có thể của nó để sử dụng namespace mx_internal bằng cách thêm vào sau

nhập khẩu mx.core.mx_internal; sử dụng không gian tên mx_internal;

Adobe sử dụng không gian tên này để đánh dấu các phương thức và thuộc tính có thể thay đổi trong tương lai để chúng sử dụng không gian tên này để ẩn mọi thứ.

Nếu bạn làm theo mã trong Panel.as bạn có thể nhận được tác phẩm này và xác định các khu vực nội dung tùy chỉnh của riêng bạn.