From faa5ef4c48a6b0fb5c8f479a3e9d492fe4def5bf Mon Sep 17 00:00:00 2001 From: hyb1996 <946994919@qq.com> Date: Mon, 28 May 2018 20:02:40 +0800 Subject: [PATCH] =?UTF-8?q?add(sample):=20=E6=8A=A4=E7=9C=BC=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F=20fix(floaty):=20xml.toString()=20return=20empty=20wh?= =?UTF-8?q?en=20xml=20has=20just=20one=20node?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/assets/sample/悬浮窗/护眼模式.js | 10 ++++++++++ autojs/src/main/assets/modules/__floaty__.js | 4 ++-- autojs/src/main/assets/modules/__ui__.js | 5 ++++- .../java/com/stardust/autojs/runtime/api/Floaty.java | 1 + 4 files changed, 17 insertions(+), 3 deletions(-) create mode 100644 app/src/main/assets/sample/悬浮窗/护眼模式.js diff --git a/app/src/main/assets/sample/悬浮窗/护眼模式.js b/app/src/main/assets/sample/悬浮窗/护眼模式.js new file mode 100644 index 00000000..e95a2bc4 --- /dev/null +++ b/app/src/main/assets/sample/悬浮窗/护眼模式.js @@ -0,0 +1,10 @@ +var w = floaty.rawWindow( + +); + +w.setSize(-1, -1); +w.setTouchable(false); + +setTimeout(()=>{ + w.close(); +}, 60000); \ No newline at end of file diff --git a/autojs/src/main/assets/modules/__floaty__.js b/autojs/src/main/assets/modules/__floaty__.js index b74881b3..69adbbf0 100644 --- a/autojs/src/main/assets/modules/__floaty__.js +++ b/autojs/src/main/assets/modules/__floaty__.js @@ -4,14 +4,14 @@ module.exports = function(runtime, global){ floaty.window = function(layout){ if(typeof(layout) == 'xml'){ - layout = layout.toString(); + layout = layout.toXMLString(); } return wrap(runtime.floaty.window(layout)); } floaty.rawWindow = function(layout){ if(typeof(layout) == 'xml'){ - layout = layout.toString(); + layout = layout.toXMLString(); } return wrap(runtime.floaty.rawWindow(layout)); } diff --git a/autojs/src/main/assets/modules/__ui__.js b/autojs/src/main/assets/modules/__ui__.js index f4bc4f93..8cfcafd5 100644 --- a/autojs/src/main/assets/modules/__ui__.js +++ b/autojs/src/main/assets/modules/__ui__.js @@ -13,8 +13,11 @@ module.exports = function (runtime, global) { if(!activity){ throw new Error("需要在ui模式下运行才能使用该函数"); } + if(typeof(xml) == 'xml'){ + xml = xml.toXMLString(); + } runtime.ui.layoutInflater.setContext(activity); - var view = runtime.ui.layoutInflater.inflate(xml.toString()); + var view = runtime.ui.layoutInflater.inflate(xml); ui.setContentView(view); } diff --git a/autojs/src/main/java/com/stardust/autojs/runtime/api/Floaty.java b/autojs/src/main/java/com/stardust/autojs/runtime/api/Floaty.java index 97572cee..841478ed 100644 --- a/autojs/src/main/java/com/stardust/autojs/runtime/api/Floaty.java +++ b/autojs/src/main/java/com/stardust/autojs/runtime/api/Floaty.java @@ -57,6 +57,7 @@ public class Floaty { } catch (InterruptedException e) { throw new ScriptInterruptedException(); } + JsResizableWindow window = new JsResizableWindow((context, parent) -> view); addWindow(window); return window;