MXML是一种用于在Adobe Flex布局用户界面组件的XML语言。语言标签中使用mx作为前缀。MXML区分大小写,主要用于在Flex中的程序编写。


Adobe系统,这在2005年12月收购了Macromedia公司,给出的缩写MXML没有官方意义。一些开发商认为这应该代表“可扩展标记语言”。这是可能的名字来自给发布于2002年和2004年,或者“Macromedia的可扩展标记语言”的Macromedia Studio产品的MX后缀。

MXML主要用于声明应用程序的接口,也可以用于实现业务逻辑和Web应用的行为。它可以包含的ActionScript.CSS代码。

MXML经常使用Flex服务器,动态编译成标准的二进制文件。然而,的Adobe Flash Builder的 IDE(原的Adobe的Flex Builder)和免费的Flex SDK也可以编译成MXML文件,而无需使用一个Flex服务器。

还有一个PHP PEAR包叫做XML_MXML,这是一个框架来构建的Adobe Flex应用程序。

MXML被认为是一个专有标准,由于其与Adobe技术紧密集成 并开源于Apache基金会。

理念

修正HTML 标记语言混乱、扩充性、弹性均不佳,效能问题(需要下载整份档案,才能开始对档案做搜寻),
并且强制规范显示格式的缺点 ,MXML以弹性为出发点提供所有开发商可自行开发 ,各自的标记语言显示方式 ,再由使用者导入即可。
并且由第三方供应商的生成器,其能够产生其他产品,例如本地或者移动应用。

也就是,【第三方显示界面开发者】+【第三方平台转换器】+【编辑软件】,
各自可自行开发完全弹性,再由Web设计师导入使用,
而Web设计师也可以修改,显示界面开发的套件,做出专属的界面格式发布成品至各平台。

而MXML就是扮演着【第三方显示界面开发者】开发标准的脚色,完全开源透明。

范例

手机页面范例: index.mxml

<?xml version="1.0" encoding="utf-8"?>
<s:ViewNavigatorApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
	xmlns:s="library://ns.adobe.com/flex/spark" firstView="testView" applicationDPI="160">
</s:ViewNavigatorApplication>

testView.mxml

<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
		xmlns:s="library://ns.adobe.com/flex/spark" title="主页视图">
	<s:Label text="Hello World!">
	</s:Label>
</s:View>

扩充结构

基本结构依循XML标准 在这之下 "<s:" 代表 spark 也就是开发商命名空间,由adobe 开发出的套件spark的首字 我们也可以修改或变更导入我们自己的套件