Muil是MAP移动应用平台用于描述手机端界面与可操作动作的标识性语言,其是一个规范的xml文档,主要由muil标签,自定义脚本及本地能力定义构成。
简介
Muil的设计与定义吸取了html的许多优点,因此muil在某些方面与传统的html比较类似,通过编写html网页,就可以实现在
浏览器上浏览网页,与之类似,通过编写muil页面,我们就可以轻松在支持map的手机客户端上看到与其相对应的手机界面。因此,在传统的移动应用中,借助于
map平台以及muil的力量,便可采用类似于编写网页的这种B/S的开发方式快速便捷地实现基于
C/S结构的移动应用开发。
组成
1.1 MUIL页面的组成
Muil页面的组成内容主要由以下几部分组成:
(1) muil标签及属性
muil标签封装了手机端展现所需的数据,描述了手机端展现的形式与内容,以及界面被触动时所应执行的手机本地或远程动作。Muil页面通过muil标签对手机端的显示,数据及动作进行定义与控制。
Muil标签内的属性定义了其父标签的特性,muil标签通过属性对初始化所显示的数据及展示的方式和展示效果及触发动作进行控制。
muil除了界面展示之外,还需在手机本地实现一些动作,比如控件关联,自动设值等,因此在muil中需加入一些脚本。现在map的脚本内容已日渐丰富,在map中加入脚本的方式主要有两种,第一种为在属性中进行加入,第二种则通过muil可扩展标签进行加入。
(3) 本地能力定义
与电脑上的浏览器相比较,手机的功能要丰富很多,在手机上可以打电话,可以发短信,可以拍照等,要实现这些功能,就需在muil页面中加入本地能力调用的功能。Muil中提供了对本地能力调用的支持,定义与实现起来也非常简单,只要在一些需要使用本地能力的标签的url属性中加入符合muil本地能力调用规范的url地址,便可在手机端轻松地实现所需功能了。
系统特点
1.2 MUIL页面的特点
(1) 格式规范。是一个xml文档,须符合
xml格式;
(2) 不区分大小写。 muil页面在编写时,标签名称与属性名称均不区分大小写;
(3) 属性缺省。一个标签中,一些非必要添加的属性可以不加;
(4) 多语言支持。不论MUIL页面是一个
静态的页面,还是采用asp,jsp,php等
动态网页技术所编写的
动态页面,只要其符合muil的标签与规范,map的客户端均能得到有效的支持;
(5)
绝对路径与
相对路径的支持。Muil页面的url地址即可以对http的
绝对路径提供支持,又可以对http的
相对路径提供支持;
(6) 本地资源与远程资源的支持。在muil可以使用本地的资源与远程资源。
规范
1.3 MUIL页面编写规范
(1).对称闭合
所有控件标签必须显式地闭合,使其符合XML的标准,方便解析。
如下面这个标签便不符合xml格式,没有结束:
应该改成:
或者:
对于非嵌套标签来说,推荐直接关闭的那种写法,因为其可节省一些流量,解析也方便些。
(2).唯一标示
大部分标签均有nameId属性,在同一个页面中nameId不能重复。同时,默认情况下nameId是可以缺省的,但是在一些特殊情况,nameId不能为空,如表单提交控件,需验证的控件及有相互关联关系的控件等。
(3).位置与大小定位
很多界面性的标签都有 Location(位置)和 Size(大小)属性,并且在同一页面层次级别,不能重复。其值默认可以为空.为空时,则此标签所代表的控件位置和大小将由手机端自动计算。
(4).不支持嵌套文本
不能像html那样,在标签与标签之间直接书写文本.如需输出文本请使用标签或
(5).标签的关键属性不容缺失
Muil中可以不写相关的一些属性,但是MAP server一定要将相关位置补上。
(6).标签的位置不能随便放置
如
(7).Muil页面中不能出现xml特殊字符
以下xml中的特殊字符在编写muil页面时,请注意替换为其xml
转义字符形式:
如在muil页面中直接书写上面这几种xml的特殊字符时,则解析muil页面时,xml解析器就会出错。
如下面几种情况,则均有误:
应改写为下面这种形式:
(8).关于xml中书写换行符的问题
另外请注意,在muil页面的文本中,当要输出换行符时,请不要直接写
,因为在页面中如采用这种形式输写,解析时所有的字符都会被当作普通字符,
就会被当作两个字符。请采用xml中的ascii码特殊字符格式:
分类
1.4 MUIL标签的分类
Muil的标签按照其功能的不同分为以下几类:
(1) 页面控件标签
(2) 验证标签
(3) 信息提示标签
(4) 扩展标签
页面控件标签用于描述手机端的界面,手机端常用的控件均有与其相对应的页面控件标签。页面控件标签又可分为页面级控件,基本控件,组合控件,菜单控件等。