2012-09-25 75 views
0

我使用URL邏輯在Flex中使用操作腳本創建動態樹。然而,output is not properly shown (Object name is shown instead of Label).enter image description hereFlex Actionscript中的動態樹生成

代碼在上述URL中可用。

請幫忙。

+0

郵編郵編郵編 –

+0

較好的是,你讀的問題妥善 –

+0

這是更好的是你正常發佈代碼,所以我們可以告訴你到底你在哪裏錯了。或者你更喜歡每個人都像Max一樣在下面繼續猜測。大多數Flex開發人員曾經看到過這種情況嗎?這是一個簡單的解決方法,但要解決這個問題,我們需要查看數據提供程序的設置方式,並查看生成對象的mxml。你對你的代碼感到羞恥,你不能向人們展示它嗎? –

回答

1

編寫一個正確的toString()實現你的DataTreeNode,所以它會在這棵樹中有一個正確的顯示。

示例:假設類DataTreeNode具有data:Object字段,並且此對象具有要顯示的urlToDisplay:String屬性。這樣做:

override public function toString():String { 
    if (!data) return '[null]'; 
    return data.urlToDisplay; 
} 
-2

您必須編寫一個ItemRenderer來告訴您的樹如何顯示組件。 ItemRenderer大多隻是簡單的MXML類,每個類都訪問一個項目並以任何您想要的方式顯示數據。您必須將ItemRenderer分配給您的組件。

看到這篇文章: http://help.adobe.com/en_US/flex/using/WS03d33b8076db57b9-23c04461124bbeca597-8000.html

+0

他不需要渲染器來定位數據對象標籤。 –

+1

實現一個讀取數據對象標籤並顯示它的ItemRenderer會是這樣做的一種方法。如果數據對象不僅包含標籤的文本,還包含標籤對象本身,那麼他應該考慮分離這些元素。數據對象通常不包含顯示對象。 –

0

如果僅僅依靠簡單的對象或數據類,你可以用樹的的labelField的labelFunction,以便閱讀和/或格式的數據,這是傳遞給渲染器。沒有需要的新項目渲染器類。

新的渲染器應該與這些功能兼容!

在網站上注意:項目渲染器不是「大多隻是簡單的MXML類」,它們是組件實例。如何實施並不重要。像避免項目渲染器中的數據綁定這樣的最佳做法,這就是爲什麼通常使用標記進行繪製,但根據Flex組件實況循環實現視圖行爲的原因。您可能需要在文檔中閱讀它,因爲它是Flex開發人員的必讀書籍。