【EasyClick】脚本停止事件,setStopCallback用法
1.官方例子
function main(){
setStopCallback(function (){
logd("fdsafsad 我是停止回调")
});
var result = sleep(1000);
if (result){
toast("成功");
} else {
toast("失败");
}
}
main();
2.setStopCallback只需在脚本开头执行一次,类似于开了个线程
3.setStopCallback多次调用只会生效最后一个
4.变量交互用全局变量
那我可否在这个线程里再开一个线程?
我需要监听脚本是否在运行,不在运行的话
执行一个setInterval()周期执行 feijihong 发表于 2023-3-19 22:28
那我可否在这个线程里再开一个线程?
我需要监听脚本是否在运行,不在运行的话
执行一个setInterval()周 ...
线程在主脚本开 Mr_老冷 发表于 2023-3-19 22:29
线程在主脚本开
let ui_线程
ui_线程 = setInterval(function () {
logd("ui.js main()外的ui_线程")
}, 1000);
function main() {
ui.layout("参数设置", "main.xml");
setStopCallback(function () {
logd("main.js已经停止")
cancelInterval(ui_线程)
ui_线程 = setInterval(function () {
logd("监听回调里的ui_线程")
}, 1000);
logd("ui_线程:", ui_线程)
})
}
main();
我是在ui.js里的
必须要在main.js里吗?
我这样预览ui.js,main()外的周期执行一直在跑,即使在监听里取消他,也取消不了.
但还是新建一个周期执行出来 oh,我明白了
只能在main.js里
我还以为能在ui.js里监听他呢 那要如何实现咧?
我原本有个周期执行在ui.js里
main.js停了,可否恢复ui.js的这个周期执行咧? feijihong 发表于 2023-3-19 23:02
let ui_线程
ui_线程 = setInterval(function () {
logd("ui.js main()外的ui_线程")
打印一下ui_线程
还有cancelInterval结果
看能否通过返回值做个判断,是否启动新的timer
页:
[1]