一、基本单词1.xml 可扩展标记语言
1.1.version 版本
1.2.encoding 编码
2.msg 消息
2.1.serviceID 服务ID
2.2.brief 简介
2.3.flag 标志
2.4.templateID 模板ID
3.item 项目
3.1.layout 布局
3.2.mode 模式3.3.bg 背景颜色
4.picture 图片
4.1.cover 覆盖
5.title 标题
5.1.color 颜色
5.2.size 字体大小
5.3.style 方式
6.summary 文本
7.button 按钮
7.1.action 活动
7.2.url 链接
8.1.source 来源
8.2.name 名称
8.3.icon 图标
二、开始写代码
1.XML声明
通常的XML声明长这样:
<?xml version="1.0" encoding="utf-8"?>
复制代码
它定义 XML 的版本 (1.0) 和所使用的编码 (utf-8)。
但根据实践得出,编码是可以不用定义的。
因此我们可以把代码简化成:
<?xml version="1.0"?>
2.消息类型
消息类型,在XML中叫“msg”,写成标签就是:
<msg>
这里要注意一下,msg里有很多属性。论坛里那些配置的N切什么的,大屏小屏订阅号什么的,都是由一个属性叫做“serviceID”定义的
当serviceID值是“76”时,就是之前很火的透明大屏 安卓/iOS 双兼容框架
然而别高兴的太早,因为1月10号那天透明框架被滥用,(不少人应该在群里见过,那个“网警正在监控本群聊天记录”)导致第二天腾讯把这个框架封杀了。
其他的我不知道,我不喜欢无脑切,不实用。因此也就没去学习。
msg常用属性:(中英对照看上面)
serviceID——这个我只懂76是透明框架,但是被封杀了。常用的数值为6.
<msg serviceID="6">
brief——显示在QQ会话列表,左边是(群)头像,右上角是(群)昵称,右下角显示这个属性的数值。默认为“你有新消息”
<msg brief="[QQ红包]恭喜发财">
<msg brief="机器人有新消息">
flag——长按XML后的标识,当该属性值为1或3时,该XML不可转发。常用数值为3
<msg flag="3">
templateID(这个依然不知道有什么用,目前未发现加不加有什么区别)
Tips:属性的正确写法
给一个属性赋值,需要用到“=”等于号。而数值需要用英文的双引号括起来。例:上面的XML声明<?xml version="1.0"?>中,version是一个属性。数值是1.0。数值括在双引号里,给属性赋值用等于号。
注意!一定要用英文的双引号!
中文的双引号(新宋体):“”
英文的双引号(新宋体):""
友情小贴士:<msg actionData="AppCmd://OpenContactInfo/?uin=$QQ无空格$" a_actionData="mqqapi://card/show_pslcard?src_type=internal&source=sharecard&version=1&uin=$QQ无空格$" i_actionData="mqqapi://card/show_pslcard?src_type=internal&source=sharecard&version=1&uin=$QQ无空格$">
作用:点击卡片后跳转至回复者QQ资料页面。可自行修改链接。3个属性要一起用,具体啥意思我也不知道。。。复制粘贴就行了
3.项目布局
项目布局,在XML中叫“item”,写成代码就是
<item>
同样,item里也有很多属性。
item常用属性:(中英对照看上面)
layout——数值有0,1,2,3,5,6.如果有其他的请指出。目前没发现其他的有什么用
mode——当layout值为2时有用。一般值为1
bg——数值是十六进制颜色代码。(参见十六进制颜色对应表)
<item layout=“0”> 与 <item layout=“1”>
个人认为这俩个完全一样,并且可以省略。
也就是说:
<item layout=“0”> 等于 <item layout=“1”> 等于 <item>
Tips:一个XML绝对拥有以下代码,绝对。具体内容写在<item>和</item>中间。此布局是XML中重要的一部分。虽说不加这个布局也能显示出来,但会很难看。
<?xml version="1.0"?>
<msg>
<item>
</item>
</msg>
为了方便起见,以下所有的布局都可以写在这个布局里面。
但除了布局之外,还有俩个最基本的标签,title和summary
他们是整个XML代码中最基本的,用来显示——字。
<title>呵呵</title>
在这俩个标签中,常见的属性有color(字体颜色)size(字体大小)style(不知道能干嘛)
color可以定义该行代码显示的字的颜色,参见十六进制颜色对应表,上面有链接。新手也可以去看石头的,他的比较简单,但对新手来说够用了。
size可以定义该行代码显示的字的大小,本人预测无限大,只要你的手机够硬。
友情小贴士:清屏代码分享
原理:size=非常大。
<?xml version="1.0"?><msg>
<item>
<summary size="99999999"> </summary>
</item>
</msg>
注:当title跟summary的color值和size值相同时,这俩个标签的效果是一样的。我之前测试过这俩个标签的默认值,存在笔记里,然后。。。手贱删了。现在懒得测试。
<item layout="2">
该布局用法:
<?xml version="1.0"?>
<msg>
<item layout="2">
<picture cover="要显示的图片链接"/>
<title>第一行字</title>
<summary>第二行字</summary>
</item>
</msg>
<item layout="2" mode="1">
layout=“2” mode=“1”与上面的layout=“2”的区别在:
如果仅仅是layout=“2”,那么右边俩行字会换行。
示例:代码封杀太严重,另外俩点已经更新好了,先发上去,这个等会
如果是layout=“2” mode=“1”,则多余的字会用省略号表示。
示例:代码封杀太严重,另外俩点已经更新好了,先发上去,这个等会
我是这样用的:(看心情分享配置代码)
<?xml version="1.0"?>
<msg>
<item layout="2" mode="1">
<picture cover="mqqapi://card/show_pslcard?src_type=internal&source=sharecard&version=1&uin=$QQ无空格"/>
<title>$昵称$ </title>
<summary>$当前等级$ ($财富总额$/$还差等级积分$)</summary>
</item>
</msg>
<item layout="3">
该布局专门为按钮而用。
在<item layout="3"></item>中间,可以在一行中显示无数个按钮(button),且按钮上的文字居中
单行,显示一个按钮,但文字靠左显示,不居中的代码:(注:声明和msg的标签已省略)
<button>示例1</button>
单行,显示一个按钮,且文字居中显示:
<item layout="3">
<button>示例2</button>
</item>
单行,显示二个按钮,且文字居中显示:
<item layout="3">
<button>示例3.1</button>
<button>示例3.2</button>
</item>
单行,显示三个按钮,且文字居中显示:
<item layout="3">
<button>示例4.1</button>
<button>示例4.2</button>
<button>示例4.3</button>
</item>
以此类推,按钮个数无限制。(牛逼)
多行则要用多个item布局:
<item layout="3">
<button>示例5.1</button>
<button>示例5.2</button>
</item>
<item layout="3">
<button>示例5.3</button>
<button>示例5.4</button>
</item>
雨道大神曰:“一个卡片中button用多了容易被封。”
有待证实。
button,顾名思义是按钮,没错,按钮是可以按下的,上次时间紧没更新这个。
使一个按钮能够被按下并且显示一个网页,需要用到俩个属性:action(活动)url(链接)
具体用法为:
<button action="web" url="链接">按钮名称</button>
action=“web”:意为点击这个按钮时的活动为打开一个网页。
url=“链接”:上面定义好了点击时要显示网页,这里当然要定义要显示的网页的链接了,这个不难理解。
<item layout="6">
这个是专门为图片准备的。大屏图片。
使用方法:
<?xml version="1.0"?>
<msg>
<item lauout="6">
<picture cover="要显示的图片链接"/>
</item>
</msg>
<item layout="5">
这个跟上面的类似。大屏图片,且图片下方有一行字。
使用方法:
<?xml version="1.0"?>
<msg>
<item layout="2">
<picture cover="这里放图片链接"/>
<title>第一行字</title>
</item>
</msg>
Tips:在layout=“5”时,如果把“title”那一行去掉,则效果跟layout=6完全一样,因此一般都直接用layout=“5”,无视6.
在同一个XML中。项目布局(也就是item)可以使用多个,例如:
<?xml version="1.0"?>
<msg>
<item layout="6">
<picture cover=""/>
<title></title>
</item>
<item layout="2" mode="1">
<picture cover=""/>
<title></title>
<summary></summary>
</item>
<item bg="#000000">
<summary></summary>
</item>
</msg>
上面这个代码采用了3个item,具体的在之后的更新会详解。
[转载来自:http://bbs.cfxy.me/forum.php?mod=viewthread&tid=32273&highlight=xml]