對於我的比賽,我在做遊戲主視圖作爲普通的Flash/AS3類,類似:結束語一個Flash/AS3雪碧作爲一個Flex MXML組件
public class GameArena extends Sprite
這簡直是在一個大的矩形哪些遊戲對象被繪製,所以不需要花哨的UI,並且我想要保持主遊戲引擎無Flex,所以我可以使用Sprites而不是較重的Flex組件。
然而,對於整個遊戲/應用程序,我仍然想使用Flex的GUI /佈局。所以我想我可以創建一個Flex類的子類UIComponent
,其中有一個GameArena
對象作爲一個孩子......現在我可以在MXML以此爲標準的Flex組件。
例如
public class ArenaView extends UIComponent
{
public var gameArena:GameArena;
override protected function createChildren():void
{
super.createChildren();
if (!gameArena)
{
gameArena = new GameArena();
gameArena.width = 200;
gameArena.height = 200;
addChild(gameArena);
}
}
}
然後,我在我的主應用程序MXML是一個簡單的一行:
<logic:Arena x="0" y="0" width="50%" height="100%" name="TestArenaPanel" />
但到目前爲止,而我的代碼編譯,閃存類是沒有得到呈現。也許這很簡單,但我想問問這是一種合理的方法,還是有更好的方法?
順便說一句:我已經有了「應該使用Flex」對話很多次。如果你想討論這個問題,請在評論中這樣做,但要保留主題的答案。
在我看來,你所做的事情是有道理的,我看不出爲什麼它不起作用。 – 2011-01-10 12:09:38
那麼這是有益的,至少有助於看到這個想法不愚蠢:) – 2011-01-10 12:27:54
是的,它應該工作,可能還有其他錯誤 – 2011-01-10 13:31:29