悬浮窗

说明

悬浮窗模块函数主要是跟悬浮窗相关联
悬浮窗模块的对象前缀是floaty,例如 floaty.requestFloatViewPermission()这样调用

floaty.requestFloatViewPermission()

请求悬浮窗权限

@return bool true为成功

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); //展示main.xml文件的视图,并且返回安卓原生原生的对象 let view = floaty.showFloatXml(tag,"main.xml",100,100); logd(view); if (view) { // 从悬浮窗中查找视图tag=web的对象 (例子) //let web = view.findViewWithTag("web") } sleep(2000) //更新尺寸 floaty.updateSize(tag,800,1800) sleep(2000) //更新X坐标 floaty.updateX(tag,100) sleep(2000) //更新X坐标 floaty.updateY(tag,100) sleep(2000) //更新不可触摸状态 floaty.touchable(tag,false) sleep(10000) //更新可以触摸状态 floaty.touchable(123,true) } main();

floaty.showFloatXml()

显示一个XML悬浮窗

@param tag 悬浮窗的标签
@param xml xml路径或者内容
@param x 起始X位置
@param y 起始Y位置
@return {View} android的View对象

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); //展示main.xml文件的视图,并且返回安卓原生原生的对象 let view = floaty.showFloatXml(tag,"main.xml",100,100); logd(view); if (view) { // 从悬浮窗中查找视图tag=web的对象 (例子) //let web = view.findViewWithTag("web") } } main();

floaty.showFloatView()

显示一个View悬浮窗

@param tag 悬浮窗的标签
@param view android的View对象
@param x 起始X位置
@param y 起始Y位置
@return {View} android的View对象

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); importPackage(android.widget) importPackage(android.graphics) let tv = new TextView(context); tv.setText("TEST"); tv.setBackgroundColor(Color.parseColor("#336699")) let view = floaty.showFloatView(tag,tv,100,100); logd(view); } main();

floaty.updateX()

设置悬浮窗X坐标

@param tag 悬浮窗的标签
@param x X位置
@return {bool} true成功 false 失败

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); //展示main.xml文件的视图,并且返回安卓原生原生的对象 let view = floaty.showFloatXml(tag,"main.xml",100,100); logd(view); if (view) { // 从悬浮窗中查找视图tag=web的对象 (例子) //let web = view.findViewWithTag("web") } sleep(2000) //更新尺寸 floaty.updateSize(tag,800,1800) sleep(2000) //更新X坐标 floaty.updateX(tag,100) sleep(2000) //更新X坐标 floaty.updateY(tag,100) sleep(2000) //更新不可触摸状态 floaty.touchable(tag,false) sleep(10000) //更新可以触摸状态 floaty.touchable(123,true) } main();

floaty.updateY()

设置悬浮窗Y坐标

@param tag 悬浮窗的标签
@param y Y位置
@return {bool} true成功 false 失败

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); //展示main.xml文件的视图,并且返回安卓原生原生的对象 let view = floaty.showFloatXml(tag,"main.xml",100,100); logd(view); if (view) { // 从悬浮窗中查找视图tag=web的对象 (例子) //let web = view.findViewWithTag("web") } sleep(2000) //更新尺寸 floaty.updateSize(tag,800,1800) sleep(2000) //更新X坐标 floaty.updateX(tag,100) sleep(2000) //更新X坐标 floaty.updateY(tag,100) sleep(2000) //更新不可触摸状态 floaty.touchable(tag,false) sleep(10000) //更新可以触摸状态 floaty.touchable(123,true) } main();

floaty.updateSize()

设置悬浮窗大小

@param tag 悬浮窗的标签
@param w 宽度
@param h 高度
@return {bool} true成功 false 失败

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); //展示main.xml文件的视图,并且返回安卓原生原生的对象 let view = floaty.showFloatXml(tag,"main.xml",100,100); logd(view); if (view) { // 从悬浮窗中查找视图tag=web的对象 (例子) //let web = view.findViewWithTag("web") } sleep(2000) //更新尺寸 floaty.updateSize(tag,800,1800) sleep(2000) //更新X坐标 floaty.updateX(tag,100) sleep(2000) //更新X坐标 floaty.updateY(tag,100) sleep(2000) //更新不可触摸状态 floaty.touchable(tag,false) sleep(10000) //更新可以触摸状态 floaty.touchable(123,true) } main();

floaty.close()

关闭悬浮窗

@param tag 悬浮窗的标签
@return {bool} true成功 false 失败

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); //展示main.xml文件的视图,并且返回安卓原生原生的对象 let view = floaty.showFloatXml(tag,"main.xml",100,100); logd(view); if (view) { // 从悬浮窗中查找视图tag=web的对象 (例子) //let web = view.findViewWithTag("web") } sleep(2000) //更新尺寸 floaty.updateSize(tag,800,1800) sleep(2000) //更新X坐标 floaty.updateX(tag,100) sleep(2000) //更新X坐标 floaty.updateY(tag,100) sleep(2000) //更新不可触摸状态 floaty.touchable(tag,false) sleep(10000) //更新可以触摸状态 floaty.touchable(123,true) } main();

floaty.touchable()

设置悬浮窗可触摸

@param touchable 是否可触摸 true 代表可触摸,false不能触摸
@return {bool} true成功 false 失败

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); //展示main.xml文件的视图,并且返回安卓原生原生的对象 let view = floaty.showFloatXml(tag,"main.xml",100,100); logd(view); if (view) { // 从悬浮窗中查找视图tag=web的对象 (例子) //let web = view.findViewWithTag("web") } sleep(2000) //更新尺寸 floaty.updateSize(tag,800,1800) sleep(2000) //更新X坐标 floaty.updateX(tag,100) sleep(2000) //更新X坐标 floaty.updateY(tag,100) sleep(2000) //更新不可触摸状态 floaty.touchable(tag,false) sleep(10000) //更新可以触摸状态 floaty.touchable(123,true) } main();

floaty.focusable()

设置悬浮窗可聚焦(视图包含输入框需要聚焦才能进行输入)

@param focusable 是否可聚焦 true 代表可聚焦,false不能聚焦
@return {bool} true成功 false 失败

function main(){ let tag="123"; //关闭tag=123的浮窗 floaty.close(tag) //请求权限 let p = floaty.requestFloatViewPermission(1000) logd("是否有浮窗权限: "+p); if (!p) { loge("没有浮窗权限,终止执行"); return; } sleep(1000); //展示main.xml文件的视图,并且返回安卓原生原生的对象 let view = floaty.showFloatXml(tag,"main.xml",100,100); floaty.focusable(tag,true) logd(view); if (view) { // 从悬浮窗中查找视图tag=web的对象 (例子) //let web = view.findViewWithTag("web") } sleep(2000) //更新尺寸 floaty.updateSize(tag,800,1800) sleep(2000) //更新X坐标 floaty.updateX(tag,100) sleep(2000) //更新X坐标 floaty.updateY(tag,100) sleep(2000) //更新不可触摸状态 floaty.touchable(tag,false) sleep(10000) //更新可以触摸状态 floaty.touchable(123,true) } main();