2011-03-06 44 views

回答

1

如果您將容器(讓我們稱之爲背景)和它的子項(讓我們稱它們爲圖片)分開並將它們放置在一個新的(不可見的)容器精靈中,那麼這是可能的。

背景和圖片都將是新容器的子項,所以如果您縮放新容器,那麼所有內容都會縮放。但是,如果您將背景鎖定在零子索引(因此它總是出現在圖片後面)並將其設置爲新容器的公共屬性,則可以自行縮放它,而不縮放圖片,因爲他們會是兄弟姐妹,而不是孩子。

由於圖片,背景和容器屬於同一個類對象,因此在背景縮放時通知圖片甚至不需要自定義事件,儘管您可以創建/如果你願意的話,派遣/聽一個。

+0

據我所知movieclip或sprite並沒有調整事件大小。 – 2011-03-08 07:58:23

2

簡單的回答:你不能。

如果您想要有不同的行爲,您需要創建自己的調整大小的機制(例如,使用resize事件偵聽器根據容器大小放置「子」MovieClip,而不是將它們添加到容器的大小顯示列表)。

1

這聽起來像你有什麼設計問題。繼承規模的要點是,當您將某些項目放入父級MC中,並且您開始縮放父級時,所有孩子都會效仿。 也許您需要創建一些非MC數據對象容器,以在其中存儲您的孩子MC?或者做任何你正在擴大其他項目的兄弟姐妹。 如果不理解您的具體項目目標,很難說出您需要的內容。但乍看之下,我希望將這些(不可調整大小)的孩子變成他們自己的元素。

1
myChild.scaleX = 1/myParent.scaleX; 
myChild.scaleY = 1/myParent.scaleY; 

或者如果兒童的比例不是100%,您可以在初始化或每當它發生變化時定義他們的targetScale。

myChild.scaleX = myChild.targetScale/myParent.scaleX; 
myChild.scaleY = myChild.targetScale/myParent.scaleY; 
+0

克里奧夫可以嘗試這樣的事情.. – 2011-03-07 04:28:13

+0

它會擴大兒童,因爲他們的規模將不同於1. – 2011-03-08 08:00:12

+0

@Creotiv編輯,以允許非100%規模的兒童。 – 2011-03-08 08:13:32