【3.0 iyu升级简介】
1. uigo代码必须加文件后缀,如 uigo("a.iyu") 或 uigo("a.ilua")。 否则将会闪退等。
2. uls必须正确的 输入界面宽度,输入界面高度。 否则界面列表可能异常。
3. 代码中双引号需进行转义,如 fw("%a.txt", "ab"cd") 修改成 fw("%a.txt", "ab\"cd")

#
【s 变量】
用法:

//申明一个变量,如果不赋值,系统将默认赋值 null
s a

申明事件局部变量
//可以赋数值
s a = 123
tw(a)

s 我是变量 = 123
tw(我是变量)

申明界面变量
//可以赋字符串
ss a = "123"
tw(ss.a)

申明全局变量
//可以赋其他变量
sss b = a
tw(sss.b)

区域介绍:
局部变量:服务于一个事件,当用户与界面发生交互时,产生一个事件,仅供于该事件的变量产生以及操作。
界面变量:生产界面变量后,同一个界面中的所有事件,均可对其进行操作。
全局变量:生产全局变量后,同一个应用中的所有事件,均可对其进行操作。

说明:
变量类似一个箱子,你可以把数据储存在里面,等需要的时候就取出来使用,可以改变它装你想要装的数据。裕语言中的变量是可以根据赋值,而且自动转换的,所以无需申明数据类型。

提示:
变量的定义规范, 以 “s、ss、sss”开头。 然后加上自己自定义的变量名,比如“abc、 nihao、sfw123、www_zzw”变量不允许全部为数字,不允许掺杂符号,请不要使用太长的变量名,不推荐使用中文作为变量名。

空值:
如果访问一个没有声明的变量,将返回“null”空值类型,这个不对等于字符的 'null'。
判断是否空值的例子:(这里我们不知道变量“abc”是否空值)
f(abc == null)
{
syso("是null")
}
#
【// 或 /. ./ 注释语句】
用法
//这个是变量“a”它的值等于“1”
s a = 1
//这个是变量“b”它的值等于“2”
s b = 2

/.
大量代码注释方法
s c = 3
s d = 4

./


说明:
注释语句符号可以用“//”,以注释符号开头的正行,将会被代码执行器无视。通常用于给自己标示代码的含义

提示:
此注释语句可用于属性。

提示:
不支持代码尾部使用注释语句,注释行必须开头为注释符,举错误的例:

s a = 1 //这个是变量“a”它的值等于“1”
//这个是变量“b”它的值等于“2” s b = 2
#
【syso 打印】
用法:
syso("1314")
可以打印出数据,代码同等于 System.out.println("1314"),可以在测试时,选择 调试日志查看打印数据。

说明:
打包后,安装运行可以通过 Log Tag:iapp 进行监听数据。
#。
【f 判断语句】
用法:
s a = 2
f(a == 1)
{
syso("等于1")
}
else f(a == 2)
{
syso("等于2")
}
else
{
syso("等于其他")
}

s a = 1
s b = 1
f(a == b)
{
syso("等于")
}
else
{
syso("不等于")
}

s a = "nimei"
s b = "nimei"
f(a == b)
{
syso("等于")
}
else
{
syso("不等于")
}

s a = 1
s b = 2
f(!a == b)
{
syso("等于")
}
else
{
syso("不等于")
}

s a = 1
s b = 2
s c = 3
f(a < b && b < c)
{
syso("等于")
}
else
{
syso("不等于")
}

s a = 1
s b = 2
s c = 2
f(a == b || b == c)
{
syso("等于")
}
else
{
syso("不等于")
}

说明:
条件判断语句,用于两个值的比较,常用于判断值是否对等与数值的大小,判断数据需要同类型数据对比。表达式返回的“是”,那么将执行 { 代码 } 里面的代码。“否”将执行else后面的代码(不支持运算表达式,例:a+b=2)

支持运算符(返回 是 与 否):
== 是否对等
!= 是否不等于
>= 是否大于或等于
<= 是否小于或等于
> 是否大于
< 是否小于
?* 字符串开通是否相同
*? 字符串结尾是否相同
? 字符串是否被包含
上面三个举例:
s a = "abcdef"
f(a ?* "abc") 返回“是”
f(a *? "def") 返回“是”
f(a ? "cde") 返回“是”

支持逻辑运算符:
|| 或者
&& 并且
! 反意
#
【w 循环】
用法:
//这将循环99次
s a = 99
w(a > 0)
{
syso(a)
s(a - 1, a)
}

说明:
条件循环语句,比较值的变化,然后进行循环执行 { 代码 } 里面的代码。当条件为“否”的时候会停止循环,条件“是”的话,将一直循环执行。
支持运算符(返回 是 与 否):(跟 f 语句 一样,请参考)
#
【for 循环】
用法:
for(1; 20)
{
syso("循环20次")
}

s a = 1
s b = 10
for(a; b)
{
syso("循环10次")
}

说明:
参数可以给予另个参数,一个为初始循环的值,一个是最大循环值。

#
【t 新线程】
用法:
t()
{
syso("新线程里执行代码")
}

说明:
启用新线程,去执行一些需要执行很久的代码。比如把下载文件,获取网页源码,大量的文件操作,可以放入新线里执行。这里线程的概念,启用新的线程帮你处理代码,这样不会影响到主线程。
#
【ssj 设置或修改控件事件代码】
用法:
s id = 3
ssj(id, "clicki")
{
tw("ok")
}

说明:
输入控件Id,输入事件类型,并将事件代码填写在 { 中 },动态控件将触发该事件代码。

事件类型:
clicki=单击事件
touchmonitor=触屏监听事件
press=触屏长按事件
keyboard=键盘触发事件
pressmenu=触屏长按菜单事件
editormonitor=框编辑监听事件
ontextchanged=文本内容已改变
beforetextchanged=文本内容改变之前
aftertextchanged=文本内容改变之后
focuschange=获得焦点事件
onscrollstatechanged=滚动状态已改变
onscroll=滚动
clickitem=单击项目事件
onprogresschanged=加载过程进度改变
shouldoverrideurlloading=加载网址之前
ondownloadstart=文件下载事件
onpageselected=滑动切换界面事件
onpagescrolled=滑动切换界面过程
onpagescrollstatechanged=滑动操作过程
ondrawerclosed=侧滑关闭事件
ondraweropened=侧滑展示事件
onoptionsitemselected=项目选择
onitemselected=选择项目事件

#
【tw 提示】
用法:
tw("你好")

//设置参数1:显示的时间长久;0:显示的时间短暂;\n为换行的意思,其他地方通用
tw("你好\n吗?", 1)

说明:
用于提醒用户,界面显示时长大约为 2秒钟。弹出代码中的文字,来提醒用户。
#
【fd 删除文件】
用法:(将删除SD卡根目录的abc.zip文件)
s a = "%abc.zip"
fd(a, b)
tw(b)

说明:
用于删除指定的文件,是否成功返回数据:true或 false

提示:同时将创建变量“b”,作为记录返回的值。(通用于下咧)
#
【fe 文件是否存在】
用法:(将判断SD卡根目录的abc.zip文件是否存在)
s a = "%abc.zip"
fe(a, b)
tw(b)

说明:
用于判断指定的文件存在,是否存在返回数据:true或 false
#
【fs 文件大小】
用法:(将获取SD卡根目录的abc.zip文件占用的大小)
s a = "%abc.zip"
fs(a, b)
tw(b)

说明:
用于判断指定的文件存在,是否存在返回数值单位(字节),若获取失败将返回 “-1”。
转换为KB:
s a = "%abc.zip"
fs(a, b)
s(b/1024, b)
tw(b)

转换为MB:
s2(b/1024/1024, b)
//保留所有小数
sn(b/1024/1024, b2)
#
【fr 读取文本】
用法:(将读取SD卡根目录的abc.txt文件里面的内容)
s a = "%abc.txt"
fr(a, b)
tw(b)

s a = "%abc.txt"
s b = "utf-8"
fr(a, b, c)
tw(c)

说明:
用于读取文本文件的数据内容。
#
【fc 复制文件】
用法:(在SD卡根目录abc.txt文件拷贝一个新的副本至abc2.txt)
s a = "%abc.txt"
s b = "%abc2.txt"
fc(a, b, c)

//设置重复不覆盖
s c = false
fc(a, b, c, d)

说明:
用于复制文件,创建一个新的副本文件。是否成功返回数据:true或 false

#
【fw 写入文本】
用法:(将文本数据写入至SD卡根目录的abc.txt文件里面)
s a = "%abc.txt"
s b = "我是一个txt文件的内容"
fw(a, b)

s a = "%abc.txt"
s b = "我是一个txt文件的内容"
s c = "utf-8"
fw(a, b, c)

说明:
用于写入文件。
#
【fl 文件列表】
用法:(获取一个目录的文件列表)
s a = "%dir"
fl(a, b)
for(c; b)
{
syso(c)
}

//仅获取文件夹
s a = "%dir"
fl(a, true, b)
for(c; b)
{
syso(c)
}

//仅获取文件
s a = "%dir"
fl(a, false, b)
for(c; b)
{
syso(c)
}

说明:上面例子是获取sd卡根目录文件夹“dir”里面的所有子目录以及文件,并获取结果传入变量“b”,并用for循环,来读取变量“b”里面的列表数据,并把列表数据复制给变量“c”,其中代码会自动创建并赋值好变量:b、c

提示:
看似有些复杂,理解了就简单了, 这里的变量“b”类型是一个数组,里面包含了一个数据列表。通过for循环可以顺序读取这个列表。并每次循环把每列的数据赋值给变量“c”
#
【ft 转移文件】
用法:(将SD卡根目录的abc.txt转移至abc3.txt)
s a = "%abc.txt"
s b = "%abc3.txt"
ft(a, b, c)
tw(c)

说明:
用于转移文件。是否成功返回数据:true或 false
#
【fdir 获取SD卡根目录路径】
用法:(获取根目录路径并赋值至变量“a”)
//获取根目录
fdir(a)
tw(a)

//获取目录的绝对路径
s a = "%dir"
fdir(a, b)
tw(b)

说明:
通过获取根目录路径,就可以计算文件的绝对路径。
#
【fuz 解压zip部分文件】
用法:(将根目录文件abc.apk压缩包里的AndroidManifest.xml文件,解压到根目录AndroidManifest2.xml)
s a = "%abc.apk"
s b = "AndroidManifest.xml"
s c = "%AndroidManifest2.xml"
fuz(a, b, c, d)
tw(d)

//解压文件遇到重复不覆盖
s a = "%abc.apk"
s b = "AndroidManifest.xml"
s c = "%AndroidManifest2.xml"
s d = false
fuz(a, b, c, d, e)
tw(e)

说明:
通过上面代码可以实现压缩包解压部分的文件,并返回赋值至变量“d”解压文件的数量。
#
【fuzs 解压整个zip】
用法:(将根目录文件abc.apk压缩包解压至根目录文件夹abcdir,会自动创建)
s a = "%abc.apk"
s b = "%abcdir"
fuzs(a, b, c)
tw(c)

//解压文件遇到重复不覆盖
s a = "%abc.apk"
s b = "%abcdir"
s c = false
fuzs(a, b, c, d)
tw(d)

说明:
通过上面代码将解压整个压缩包至指定文件,并赋值至变量“c”,是否成功返回数据:true或 false
#
【fj 压缩文件或文件夹至zip】
用法:
s a = "%adc.txt"
s b = "%abc.zip"
fj(a, b, c)
tw(c)

//不去除根目录
s a = "%adc.txt"
s b = "%abc.zip"
s c = false
fj(a, b, c, d)
tw(d)

说明:
压缩文件。返回赋值数据:true 或 false
#
【fo 打开文件】
用法:(将根目录打开安装abc.apk文件)
s a = "%abc.

Next
Pg.: 1 2 3 4 5 6 ... 13


Back to home | File page

Subscribe | Register | Login | N