场景描述
通过console.show()显示控制台的悬浮窗之后,控制台中会显示一个输入框和一个确定按钮,一般我们不需要这个功能,想要把它隐藏,查看开发文档却没有相关的隐藏方法,虽然不影响使用,但强迫症表示忍不了一点,必须把它隐藏掉!😂
效果如图:
方式一:通过console.show显示的悬浮窗
// 显示控制台的悬浮窗
console.show();
// 隐藏输入框和确定按钮
ui.run(function() {
let mConsoleViewField = runtime.console.getClass().getDeclaredField('mConsoleView');
mConsoleViewField.setAccessible(true);
let refConsoleView = mConsoleViewField.get(runtime.console);
let mConsoleView = refConsoleView.get();
mConsoleView.findViewById(com.stardust.autojs.R.id.input_container).visibility = android.view.View.GONE;
});
log('测试。。。');
setTimeout(() => { }, 5000);
方式二:自定义悬浮窗控制台
// 创建自定义悬浮窗
let fw = floaty.rawWindow(
<vertical w="200" h="200" bg="#80333333">
<text bg="#000000" textColor="#ffffff">自定义悬浮窗控制台</text>
<com.stardust.autojs.core.console.ConsoleView id="console"/>
</vertical>
);
fw.console.setConsole(runtime.console);
// 隐藏控制台的输入框和确定按钮
ui.run(function() {
fw.console.findViewById(com.stardust.autojs.R.id.input_container).visibility = android.view.View.GONE;
});
log('测试。。。');
setTimeout(() => { }, 5000);