XML文档设计说明
一简介
为了减少代码的书写量,我们可以通过编写符合一定规范的XML文档,直接完成界面的设计。下面是一个符合我们规范的文档样式:
<?xml version="1.0" encoding="UTF-8"?>
<XmlFile>
<Html Name="test" AutoSave="1" AutoCache="1">
<Body Data1="16" Data2="" bgColor="">
<ItemType="Content" Color="" BackColor="" Align="">XML文档</Item>
</Body>
</Html>
</XmlFile>
首先,这个文档必须是XML格式的,因为我们的框架是通过分析符合XML格式的文档来生成相应的ITEM,从而在手机屏幕上显示出来。
其次,在这个规范中,最重要的是ITEM的TYPE属性,我们已经预先定义了几种TYPE类型,每种类型对应界面上的某种显示效果,当然,我们也允许你实现自己的TYPE类型(前提是要符合规范),除了TYPE以外,每个ITEM还具有其它共用的属性,通过设置这些属性,我们可以控制该ITEM在手机上的字体颜色、背景颜色、上边距、下边距等等,每个ITEM都具有以下属性:
Type item的类型,这个值是必填项,而且是大小写敏感
ID ITEM的数值
Type item的类型,这个值是必填项,而且是大小写敏感
ID ITEM的数值
Name ITEM的标识
Align 水平布局方式,它的值必须为LEFT,CENTER,RIGHT之一,大小写不敏感。
TopMargin 上边距,选填,如是不写的话,默认值为0
BottomMargin 下边距,选填,如是不写的话,默认值为0
LeftMargin 左边距,选填,如是不写的话,默认值为0
RightMargin 右边距,选填,如是不写的话,默认值为0
Color 未选中时的字体颜色。选填,如是不写的话,用系统默认的颜色值。
SelectColor 选中时的字体颜色。选填,如是不写的话,用系统默认的颜色值。
SelectBgColor 未选中时的背景色。选填,如是不写的话,用系统默认的颜色值。
UnSelectBgColor选中时的背景色。选填,如是不写的话,用系统默认的颜色值。
对于不同的TYPE类型,也有各自的属性,下面将对预先定义的TYPE类型做详细的介绍。
SelectColor 选中时的字体颜色。选填,如是不写的话,用系统默认的颜色值。
SelectBgColor 未选中时的背景色。选填,如是不写的话,用系统默认的颜色值。
UnSelectBgColor选中时的背景色。选填,如是不写的话,用系统默认的颜色值。
对于不同的TYPE类型,也有各自的属性,下面将对预先定义的TYPE类型做详细的介绍。
二类型说明
1 CONTENT类型。
说明:
显示文字
显示文字
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
Example:
<Item Type="Content" Color="00000" UnSelectBgColor ="FFFFF" Align="center" TopMargin="10" BottomMargin="20" LeftMargin="10" RightMargin="2">员工列表:</Item>
2 Hr类型
说明:
显示一条横线
显示一条横线
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
Example:
Example:
<Item Type="Hr" Color="000000" />
3 InputBox类型
说明:
输入框,类似于高级控件里的TEXTBOX
输入框,类似于高级控件里的TEXTBOX
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
Default 输入框的默认值。
Length 允许输入的值长度。
Height 输入框的高。
Width 输入框的宽度。
LineColor 边框未选中时的颜色。
SelectLineColor 边框选中时的颜色。
Constraints 与TEXTBOX的Constraints相对应,表示输入内容的类型,目前只实现了几种。
Example:
DisplayName 在界面上显示的值。
Default 输入框的默认值。
Length 允许输入的值长度。
Height 输入框的高。
Width 输入框的宽度。
LineColor 边框未选中时的颜色。
SelectLineColor 边框选中时的颜色。
Constraints 与TEXTBOX的Constraints相对应,表示输入内容的类型,目前只实现了几种。
Example:
<Item Type="InputBox" DisplayName="用户名:" Name="UserName" Default="139" Length="20" Width="100" Height="20" Constraints="ANY" LineColor="000000" SelectLineColor="0000FF"/>
4 RadioGroup类型
说明:
单选按钮组合
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
Border 是否加上边框。
ColumnSize 在同一行显示的个数。
Example:
DisplayName 在界面上显示的值。
Border 是否加上边框。
ColumnSize 在同一行显示的个数。
Example:
<Item Type="RadioGroup" Name="NetSetting" DisplayName="网络设置" TopMargin="10" Border="true" ColumnSize="1" BackColor="0000FF">
<Radio Name="Radio1" DisplayName="CMWAP" Color="0000FF" SelectColor="FFFFFF" SelectBgColor="5277BB" UnSelectBgColor="FFFFFF"/>
<Radio Name="Radio2" DisplayName="CMNET" Checked="true" />
</Item>
子关键字说明:
5 Radio
说明:
单选按钮,必须包含在ITEM节点之间,单独写是无效的
单选按钮,必须包含在ITEM节点之间,单独写是无效的
属性:
DisplayName 在界面上显示的值。
Checked true 和false ,如果为true,表示默认为选中。
DisplayName 在界面上显示的值。
Checked true 和false ,如果为true,表示默认为选中。
6 Task类型
说明:
先通过File属性的值,判断手机上是否已存在该db,如果不存在,通过Host 和AHref 提供的属性值组成URL地址,上服务器查找,如果有结果返回,就显示在手机上
先通过File属性的值,判断手机上是否已存在该db,如果不存在,通过Host 和AHref 提供的属性值组成URL地址,上服务器查找,如果有结果返回,就显示在手机上
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
ID 跟具体的业务有关,一般指数据库中某一项的ID。
File 已经保存在手机上的DB名称。
Host 这个跟JAD的USER DEFINE中的值相对应,一般表示服务器基地址。
AHref 服务器上的相对地址。
DisplayName 在界面上显示的值。
ID 跟具体的业务有关,一般指数据库中某一项的ID。
File 已经保存在手机上的DB名称。
Host 这个跟JAD的USER DEFINE中的值相对应,一般表示服务器基地址。
AHref 服务器上的相对地址。
Example:
<Item DisplayName ="张三" ID="1" File="UserInfo1" AHref=" &UserID=16&Viewxml=Source" Host="Url" Type="Task"/>
7 CheckBox类型
说明:
复选框
复选框
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
ID 跟具体的业务有关,一般指数据库的ID。
Checked true 和false ,如果为true,表示默认为选中。
DisplayName 在界面上显示的值。
ID 跟具体的业务有关,一般指数据库的ID。
Checked true 和false ,如果为true,表示默认为选中。
Example:
<Item DisplayName ="开发部" ID="11" Checked="true" Color="000000" SelectColor="FFFFFF" SelectBgColor="5277BB" UnSelectBgColor="FFFFFF" Type="CheckBox"/>
8 Buttons类型
说明:
页面上的功能按钮,每种按钮都实现了一种功能,系统已经实现了上一页,下一页,全选,反选,全不选,打电话,发短信7种功能,它们分别使用在不同的场合
页面上的功能按钮,每种按钮都实现了一种功能,系统已经实现了上一页,下一页,全选,反选,全不选,打电话,发短信7种功能,它们分别使用在不同的场合
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
Host 这个跟JAD的USER DEFINE对应,一般表示服务器基地址。
AHref 服务器上的相对地址。
Example:
DisplayName 在界面上显示的值。
Host 这个跟JAD的USER DEFINE对应,一般表示服务器基地址。
AHref 服务器上的相对地址。
Example:
<Item Type="Buttons" DisplayName="button" AHref="Source=WebUserInfoPage.tkx&Page=" Host="Url">
<Button Name=" PrePage " DisplayName="上一页" Type="Page" Ins="1" Color="0000FF" SelectColor="FFFFFF" SelectBgColor="5277BB" UnSelectBgColor="FFFFFF"/>
<Button Name=" NextPage " DisplayName="下一页" Type="Page" Ins="3" Color="0000FF" SelectColor="FFFFFF" SelectBgColor="5277BB" UnSelectBgColor="FFFFFF"/>
<Button Name="phone" DisplayName="打电话" Type="Phone" Dest="13706515453" Default="是不是拨打电话:" Color="0000FF" SelectColor="FFFFFF"/>
<Button Name="sms" DisplayName="短信" Type="Sms" Default="你好,非常高兴认识你" Dest="13706515453" Input="false"/>
<Button Name=" " DisplayName="全选" Index="1" Type="Select" Color="0000FF"/>
<Button Name="" DisplayName="反选" Index="2" Type="Select"/>
<Button Name="" DisplayName="全不选" Index="3" Type="Select"/>
</Item>
9 Button
说明:
分别实现了上一页,下一页,全选,反选,全不选,打电话,发短信等功能,必须包含在ITEM节点之间,单独写是无效的
属性:
DisplayName 在界面上显示的值。
Type 它的可选值为:“Page”,“Phone”,“Sms”,“Select”
分别实现了上一页,下一页,全选,反选,全不选,打电话,发短信等功能,必须包含在ITEM节点之间,单独写是无效的
属性:
DisplayName 在界面上显示的值。
Type 它的可选值为:“Page”,“Phone”,“Sms”,“Select”
如果Type 为“Page”,属性Ins该值表示页号,必须是唯一的,, 属性Name也是必须的,“PrePage“表示当前按钮是上一页," NextPage "表示当前按钮是下一页,这个关键字是大小写敏感的
如果Type 为“Phone”,属性Dest是必须的,该值表示要拨打的手机号;属性Default,该值表示确认页面的提示信息;
如果Type 为“Sms”,属性Dest是必须的,表示要发送短信给该手机号;属性Input,如果为true,表示自己输入要发送的短信内容,否则的话,用Default的值做为默认值;属性Default,该值表示要发送的短信内容,只有在Input为falser的时候有效;
如果Type 为“Select”,属性Index是必须的,“1“表示全选,“2“表示反选,“3“表示全不选
如果Type 为“Phone”,属性Dest是必须的,该值表示要拨打的手机号;属性Default,该值表示确认页面的提示信息;
如果Type 为“Sms”,属性Dest是必须的,表示要发送短信给该手机号;属性Input,如果为true,表示自己输入要发送的短信内容,否则的话,用Default的值做为默认值;属性Default,该值表示要发送的短信内容,只有在Input为falser的时候有效;
如果Type 为“Select”,属性Index是必须的,“1“表示全选,“2“表示反选,“3“表示全不选
10 Delete类型
说明:
删除指定名称的DB
删除指定名称的DB
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
File 要删除的DB的名称。
Example:
DisplayName 在界面上显示的值。
File 要删除的DB的名称。
Example:
<Item DisplayName="删除数据" File="Favorite" Type="Delete"/>
11 Image类型
说明:
显示图片,它的内容为图片的二进制表示
显示图片,它的内容为图片的二进制表示
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
vAlign 垂直方向的对齐方式
Example:
vAlign 垂直方向的对齐方式
Example:
<Item Type="Image">00FFFA7874942804838439
</Item>
12 Refresh类型
说明:
刷新按钮,它跟TASK很类似,只是没有FILE属性,所以直接去连接服务器
刷新按钮,它跟TASK很类似,只是没有FILE属性,所以直接去连接服务器
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
ID 跟具体的业务有关,一般指数据库中某一项的ID。
Host 这个跟JAD的USER DEFINE中的值相对应,一般表示服务器基地址。
AHref 服务器上的相对地址。
Example:
DisplayName 在界面上显示的值。
ID 跟具体的业务有关,一般指数据库中某一项的ID。
Host 这个跟JAD的USER DEFINE中的值相对应,一般表示服务器基地址。
AHref 服务器上的相对地址。
Example:
<Item Name="R1" DisplayName="刷新" AHref="" &ID=16" Host="url" Type="Refresh"/>
13 Back类型
说明:
返回到指定的页面,默认为返回上一页
返回到指定的页面,默认为返回上一页
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
DisplayName 在界面上显示的值。
PageID 页面的名称,与HTML节点的name属性值对应。
Example:
Example:
<Item DisplayName="返回" PageID="Index" Type="Back"/>
14 Exit类型
说明:
退出当前系统,退出前会有个提示框
退出当前系统,退出前会有个提示框
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的内容。
DisplayName 在界面上显示的内容。
Message 默认为TRUE,如果设为FALSE,不显示提示框
Example:
<Item DisplayName="退出" Message="false" Type="Exit"/>
15 ColumnItem类型
说明:
它是Type的容器,能将各种TYPE类型集中起来,做为一个整体来处理
它是Type的容器,能将各种TYPE类型集中起来,做为一个整体来处理
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
| ||||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
|
|
|
| ||
|
|
| |||
|
|
|
|
|
|
|
|
|
|
|
|
属性:
DisplayName 在界面上显示的值。
Border 是否加上边框。
ColumnSize 在同一行显示的个数。
DisplayName 在界面上显示的值。
Border 是否加上边框。
ColumnSize 在同一行显示的个数。
Example:
<Items Type="ColumnItem" ColumnSize="2" Border="true">
<Item DisplayName="我收藏的帖子" File="Favorite" Type="Delete"/>
<Item Ico="Catogary" DisplayName ="张三" ID="1" File="UserInfo1" AHref=" &UserID=16&Viewxml=Source" Host="Url" Type="Task"/>
</Items>
本文介绍了一种使用XML文件设计移动应用界面的方法。通过定义不同类型的ITEM元素,如CONTENT、HR、INPUTBOX等,可以灵活地控制界面布局和交互。文章详细解释了各元素的属性及其在屏幕上的显示效果。
1251

被折叠的 条评论
为什么被折叠?



