无名商城论坛

搜索
查看: 247|回复: 0

[其他技术] 【菜鸟】Androlua+技术分享-Toast

[复制链接]

1万

主题

1万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
32464
发表于 2022-5-8 18:05:30 | 显示全部楼层 |阅读模式
今天,我们自己调用android-java api封装个提示代码,等价于Androlua+的print()打印函数。和iApp的tw()提示函数/模块

首先要说明的是不管iApp还是Androlua+底层最终都是调用java的android.widget.Toast消息提示类。

我们只通过这个类的makeText()与show()方法就能实现我们想要的代码了

下面是具体Androlua代码:

function tw(str)

require "import"
import "android.widget.Toast"

Toast.makeText(this,str,Toast.LENGTH_SHORT).show()

end

tw("OK")
是一个lua函数,自己封装的。

而require函数是lua自身实现的函数,主要作用是引用模块

而import函数由Androlua+封装实现。主要作用  用来引用java类并转成lua表(table) 供lua调用。

注意:lua函数调用时形参与实参都是一个参数时,并实参是字符串类型时可以不加括号

比如:

require "import"

import "android.widget.Toast"

也可以写成这样:

require("import")

import("android.widget.Toast")

用lua自带的require函数来引用Androlua+的import函数,然后再用import函数来引用java类与对象

require "import"

import "android.widget.Toast"

所以,这两行代码表示。先引用import,然后再用import引用java类。并把实例转成lua表(以“.”分割,最后一个转成对应table名字,比如android.widget.Toast会转成Toast表(lua table))

所以:

Toast.makeText(this,str,Toast.LENGTH_SHORT).show()

这行代码表示调用Toast表的makeText函数(函数名与java方法名对应)。makeText函数有三个参数。

第五种你们搞挡作业
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表