簡體   English   中英

Flex:DisplayObject單例

[英]Flex: DisplayObject Singleton

我想在整個應用程序中的多個不同位置顯示Flex組件。 並且它應該是組件的相同實例,而不是副本。 因此,我認為將組件作為單例。

但是問題是:

當我做這樣的事情時:var vb1:VBox = new VBox(); var vb2:VBox = new VBox();

var comp : MyComponent  = new MyComponent.getInstance();  

vb1.addChild(comp); 
vb2.addChild(comp); 

該組件僅顯示在“ vb2”中。 我認為當我們調用vb2.addChild(comp)時,它將刪除vb1中的子級。

有誰知道如何解決這個問題?

如果要在多個位置顯示組件,則必須是副本,因為它是顯示的組件本身。 為什么您需要將該組件設為Singleton? 僅僅是基礎數據需要來自同一位置嗎? 在這種情況下,您只需將顯示組件引用到同一數據即可。

如果確實確實需要在多個地方使用相同的組件,則必須在每次顯示時都將其移動。

例如:

vb1.addChild(new MyComponent(MyData.getInstance()));
vb2.addChild(new MyComponent(MyData.getInstance()));

暫無
暫無

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

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