flex mxml和as3有什麼區別?flex mxml和actionscript-3有什麼區別?
回答
MXML是一種聲明性語言,用於在Flex應用程序中定義視圖的用戶界面元素。您還可以聲明一些非UI元素,它們存在並支持該頁面,但大多數情況下僅用於UI元素。
AS3是一種編程語言,用於將所有邏輯和功能添加到您的應用程序中。
兩者通過事件和數據綁定綁在一起。
看到MXML代碼編譯成ActionScript代碼,然後成字節碼,然後由flash播放器
看到動作發生什麼事時,你必須決定了家長和孩子執行的,所以它得到了有點複雜,我只好對每個n一切代碼,
例如,
Canvas can=new Canvas();
can.percentHeight=100;
can.percentWidth=100;
can.addChild(new Button);
但在MXML的情況下,U只需要一個標籤
<Canvas height="100%" width="100%"><button></button></Canvas>
所以它變得更加容易在MXML工作,但也有r爲MXML的一些限制,所以遲早u必須使用ActionScript,那是什麼,我們都做好日常
我希望你有一些想法 TC havw gr8 day
我冒昧地格式化您的代碼 - 將來,只需選擇代碼並按下Ctrl-K即可對其進行格式化。 – Amarghosh 2010-06-10 04:37:59
MXML
是一種基於XML的標記語言,用於使用Flex框架方便地定義用戶界面和數據綁定。 MXML文件可以包含<mx:Script>
標籤中的ActionScript - 類似於HTML文件中的JavaScript。
在編譯爲SWF/SWC之前,Flex編譯器將MXML標記轉換爲ActionScript-3代碼。您在MXML中所做的大部分工作也可以使用ActionScript完成,但需要更多的代碼才能完成。
mxml
文件創建一個與擴展與mxml文件的根標記對應的類的相同名稱的動作類。例如,MyCanvas.mxml
中的以下代碼生成MyCanvas
類,它擴展了Flex Canvas
類。
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="200"
creationComplete="init(event)">
<mx:Label text="{someVar}" id="theLabel"/>
<mx:Script>
<![CDATA[
[Bindable]
public var someVar:String;
public function init(e:Event):void
{
someVar = "Created";
}
]]>
<mx:Script>
</mx:Canvas>
它相當於MyCanvas.as
包含:
package
{
import mx.containers.Canvas;
import mx.controls.Label;
import mx.binding.utils.BindingUtils;
[Bindable]
public var someVar:String;
[Bindable]
public var theLabel:Label;
public class MyCanvas extends Canvas
{
this.width = 200;
this.addEventListener(FlexEvent.CREATION_COMPLETE, init);
}
public function init(e:Event):void
{
someVar = "Created";
}
override protected function createChildren():void
{
theLabel = new Label();
addChild(theLabel);
BindingUtils.bindProperty(theLabel, "text", this, "someVar");
}
}
如果你看任何的Flex類的代碼(如UIComponent
,Canvas
等),你會發現他們都.as
文件而不是.mxml
。
- 1. MXML和Actionscript3有何區別
- 2. Flex mx:DateField disabledRanges =「」和selectableRange =「」有什麼區別?
- 3. Flex庫和ActionScript庫有什麼區別?
- 4. Flex和Flash CS4有什麼區別?
- 5. Shockwave,Flash和Flex有什麼區別?
- 6. MXML和ActionScript for mobile的真正區別是什麼?
- 7. 有什麼區別`和$(Bash中有什麼區別?
- 8. Flex:MXML「組件」和MXML「模塊」之間的區別是什麼?
- 9. 有什麼區別? :和||
- 10. &&和||有什麼區別?
- 11. 「/」和「/ *」有什麼區別?
- 12. 有什麼區別:。!和:r!?
- 13. ==和===有什麼區別?
- 14. Appender和〜有什麼區別?
- 15. $ @和$ *有什麼區別?
- 16. is和=有什麼區別?
- 17. #.00和#。##有什麼區別?
- 18. `==`和`is`有什麼區別?
- 19. '=='和'==='有什麼區別?
- 20. /和/#/有什麼區別?
- 21. | 0和~~有什麼區別?
- 22. `&`和`ref`有什麼區別?
- 23. ==和===有什麼區別?
- 24. ==和===有什麼區別?
- 25. `{}`和`[]`有什麼區別?
- 26. JavaScript和=== ===有什麼區別?
- 27. difftime和' - '有什麼區別?
- 28. =和==有什麼區別?
- 29. .container .flexbox和.flex-container之間有什麼區別
- 30. 在Flex中,skin和itemRenderer有什麼區別?
這有點像問Windows和Microsoft Office之間的區別。 – Matchu 2010-06-10 04:13:54
@Matchu,根本沒有。這就像詢問關於ASPX與C#一樣。 – 2010-06-10 04:16:49
@Sam - 是的,如果我不是他們的親,也許我不應該做出尖銳的評論。我有點認爲AS3是系統,而MXML是它的一個工具,但我幾乎不知道我在說什麼xD – Matchu 2010-06-10 04:23:45