2009-12-07 71 views
4

任何人都可以簡單解釋一下[Inspectable]元數據標籤。我在現場文檔中閱讀並理解不了。'[Inspectable]'元數據標籤

當我們打算使用[Inspectable]元數據標籤時,請幫助我嗎?

謝謝, 拉維

+0

您已經提出了11個問題,並且從未接受過單個問題(通過點擊答案附近的綠色複選標記) - 這在堆棧中不被視爲良好的行爲。 – Amarghosh 2009-12-08 05:18:02

回答

6

標籤用於與屬性以提供該屬性的代碼提示和指定,而在MXML中使用它該屬性可以取的值的可能列表。與[Bindable]元數據不同,此標記對代碼的工作沒有太大影響(除了指定默認值) - 主要用於指導Flex Builder如何處理特定屬性。

[Inspectable] metadata tag

定義暴露於屬性的提示和Flex Builder的標籤檢查部件的用戶的屬性。還限制了財產的許可價值。

例如,mx.core.Container類的verticalScrollPolicy屬性具有以下[Inspectable]標記它。

[Inspectable(category="General", enumeration="off,on,auto", defaultValue="auto")] 
public function get verticalScrollPolicy():String 
{ 
    return _verticalScrollPolicy; 
} 

這告訴Flex Builder中,這家酒店應該出現在「常規」選項卡(這是我在FB「通用」)的Flex Builder的屬性檢查器(打開MXML文件,轉到Windows菜單選擇Flex Properties以打開屬性檢查器 - 朝向檢查器選項卡的上方,靠近其標題,您將找到切換到標準視圖,類別視圖和字母視圖的按鈕。此屬性可以採用三個值之一off,on,auto,如果沒有指定,則需要auto作爲其默認值。

我從來沒有使用過這個標籤,我相信你也不會使用它,除非你正在編寫一個Flex API來被更多的用戶使用,而不是你的同事(或者你是一個完美主義者)。

+1

在flash專業版和Flash製作工具之間來回切換時使用此標記。 Inspectable屬性在Flash專業版(在組件屬性檢查器中)是可編輯的,這在某些設計場景中確實派上用場。 – gMale 2011-02-27 18:38:30

1

此標記對於編寫自定義組件時非常有用。雖然它不會與您編寫的實際代碼交互(與上面提到的[Bindable]標記不同),但它確實爲Flexbuilder環境提供了一種允許用戶使用UI Designer設置組件屬性的方法。

因此,如果您想要的標籤是有用的:

  • 寫部件要由其他人使用(只作公開訪問的性能Inspect'able)
  • 你已經寫了一個在你的用戶界面中多次使用的自定義組件(可能是一個擴展滑塊)。然後,您可以使用一些Inspect'able getter/setter方法作爲組件的公共API,然後實現這些getter/setter方法來執行數據驗證並實現組件的內部邏輯。

你可以找到更多的信息和例子here。關於編寫自定義組件的一些很好的信息(使用方法的代碼,我更喜歡)可以找到here

注意:當使用[Inspectable]創建公開的屬性,他們似乎並不在FlexBuilder中Flex的性能面板(顯示了不標準視圖無論如何,使用分類視圖字母視圖改爲

注意:您可以找到一種替代方法,使用MXLM將公共屬性添加到您的自定義組件,如this