按钮
按钮-button
按钮控件{XButton}是属于{XView}的子控件,因此{XView}中的所有方法,按钮控件都可以调用。
按钮是界面的最简单的元素,一般用于点击操作。

示例:基础使用
其实按钮本身是没有点击事件的,由于它继承了父类{XView},因此可以调用其父类中的函数来实现点击操作。
事实上,所有的组件都是继承自{XView}的,因此都可以调用{XView}中的方法。
<界面>
<状态栏 />
<按钮 标识="我的按钮" 文本="点击我试试" />
</界面>
定义 界面 = $界面.解析布局("ui.xml");
界面.显示();//显示界面
//找到界面中的元素并且实现点击事件
界面.找控件("我的按钮").点击事件(() => {
信息("我被点击了");
});
二、常用属性
文本 - 文本
设置文本
<界面>
<状态栏 />
<!-- 设置文本 -->
<按钮 文本="我是文本" />
</界面>

风格 - 样式
设置样式
可选值有:"文本(或文字)","轮廓(或者边框)","色调","图标"
<界面>
<状态栏 />
<!-- 横向排列 -->
<线性布局 宽="最大" 方向="横向">
<按钮 文本="默认样式" />
<按钮 文本="文本样式" 风格="文本" />
<按钮 文本="边框样式" 风格="轮廓" />
</线性布局>
<线性布局 宽="最大" 方向="横向">
<按钮 文本="色调样式" 风格="色调" />
<按钮 图标="ic_app" 文本="图标样式" 风格="图标" />
</线性布局>
</界面>

主题颜色 - 主题颜色
设置主题颜色
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 文本="主题颜色" 主题颜色="#57965C" />
</线性布局>
</界面>

文本颜色 - 文本颜色
设置文本颜色
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 文本="主题颜色" 文本颜色="#B44A4A" />
</线性布局>
</界面>

涟漪颜色 - 涟漪颜色
设置涟漪颜色
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 文本="涟漪颜色:黑色" 涟漪颜色="#000000" />
</线性布局>
</界面>

弧度 - 弧度
设置弧度
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 弧度="8" 文本="圆角弧度:8dp" />
<按钮 弧度="15" 文本="圆角弧度:15dp" />
</线性布局>
</界面>

文本尺寸 - 文本尺寸
设置文本尺寸
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 文本尺寸="15" 文本="文本尺寸15" />
<按钮 文本尺寸="25" 文本="文本尺寸25" />
</线性布局>
</界面>

图标 - 图标
设置图标
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 图标="ic_delete" 文本="设置图标" />
</线性布局>
</界面>

图标颜色 - 图标颜色
设置图标颜色
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 图标="ic_delete" 图标颜色="#FF0000" 文本="设置图标" />
</线性布局>
</界面>

图标尺寸 - 图标尺寸
设置图标尺寸
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 图标="ic_delete" 图标尺寸="11" 文本="图标尺寸:11" />
<按钮 图标="ic_delete" 图标尺寸="25" 文本="图标尺寸:25" />
</线性布局>
</界面>

图标内边距 - 图标内边距
设置图标内边距
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 图标="ic_delete" 图标内边距="5" 文本="图标内边距:5" />
<按钮 图标="ic_delete" 图标内边距="35" 文本="图标内边距:35" />
</线性布局>
</界面>

最小宽度 - 最小宽度
设置最小宽度
单位:dp
最小高度 - 最小高度
设置最小高度
单位:dp
内边距 - 内边距
设置内边距
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<!--内边距 顺序是:左,上,右,下-->
<!--内边距 只设置一个值:则设置所有方向的内边距-->
<!--内边距 只设置两个值:则设置左右和上下方向的内边距-->
<按钮 内边距="10" 文本="内边距:10" />
<按钮 内边距="20" 文本="内边距:20" />
</线性布局>
</界面>

重力 - 重力
设置重力
<界面>
<状态栏 />
<!-- 为了让重力效果更直观,我将按钮增高增宽显示 -->
<按钮 宽="最大" 文本="重力:开始" 重力="开始" 高="60" />
<按钮 宽="最大" 文本="重力:结束" 重力="结束" 高="60" />
</界面>

背景颜色 - 背景颜色
设置背景颜色
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 背景颜色="#1E1F22" 文本="背景颜色" />
</线性布局>
</界面>

背景图片 - 背景图片
设置背景图片
<界面>
<状态栏 />
<!-- 居中显示 -->
<线性布局 宽="最大" 方向="横向" 重力="中间">
<按钮 背景图片="/res/button-bg.png" 文本="背景图片" 文本颜色="#000000" />
</线性布局>
</界面>

三、常用函数
设置重力(重力)
设置重力
//解析布局,获得界面对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置重力
按钮.设置重力("中|下");
设置字体(字体)
设置字体
//解析布局,获得界面对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置字体
按钮.设置字体($界面.加粗);//常用值:$界面.正常,$界面.斜体,$界面.加粗,$界面.加粗斜体
设置主题颜色(颜色值)
设置主题颜色
由于打包后的apk可以选则不同的主题,那么我们就需要根据所选择的主题动态的获取颜色,详细请参考$颜色($color)的文档
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置红色
按钮.设置主题颜色($颜色.红色);
//设置成主题的颜色(具体颜色请参考$颜色文档)
//按钮.设置主题颜色($颜色.解析("主题主颜色"));
设置主题颜色(颜色值)
设置主题颜色
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置红色
按钮.设置主题颜色("#FF0000");
设置文本(文本)
设置文本
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置文字
按钮.设置文本("我是新的");
获取文本()
获得文本
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//获得文字
定义 文字 = 按钮.获取文本();
设置文本颜色(颜色)
设置文本颜色
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置文本颜色
按钮.设置文本颜色("#FF0000");
设置文本颜色(颜色)
设置文本颜色
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置文本颜色
按钮.设置文本颜色($颜色.红色);
设置涟漪颜色(颜色)
设置涟漪颜色
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置涟漪颜色
按钮.设置涟漪颜色($颜色.红色);
设置涟漪颜色(颜色)
设置涟漪颜色
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置涟漪颜色
按钮.设置涟漪颜色("#FF0000");
设置弧度(弧度)
设置弧度
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置弧度
按钮.设置弧度(13);
设置文本尺寸(尺寸)
设置文本尺寸
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置文本尺寸
按钮.设置文本尺寸(13);
设置图标(图标)
设置图标
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置图标
按钮.设置图标("logo_ag");
设置图标颜色(颜色)
设置图标颜色
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置图标颜色
按钮.设置图标颜色($颜色.红色);
设置图标颜色(颜色)
设置图标颜色
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置图标颜色
按钮.设置图标颜色("#FF0000");
设置图标尺寸(尺寸)
设置图标尺寸
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置图标尺寸
按钮.设置图标尺寸(15);
设置图标内边距(内边距)
设置图标内边距
//解析布局,获得ui对象
定义 界面 = $界面.解析布局("./资源/主界面.xml");
//获得控件
定义 按钮 = 界面.找控件("我的按钮");
//设置图标内边距
按钮.设置图标内边距(15);