autojs悬浮块右下角展开按钮样式免root前端UI界面代码

说明

本文提供的代码仅供参考。不建议用于生产环境。
可能有些地方在最新版本的Auto.js上面需要做修改,才能运行。

Auto.js简介

Auto.js是利用安卓系统的“辅助功能”实现类似于按键精灵一样,可以通过代码模拟一系列界面动作的辅助工作。
与“按键精灵”不同的是,它的模拟动作并不是简单的使用在界面定坐标点来实现,而是类似与win一般,找窗口句柄来实现的。

Auto.js使用JavaScript作为脚本语言,目前使用Rhino 1.7.7.2作为脚本引擎,支持ES5与部分ES6特性。

推荐教程

Auto.js Pro安卓全分辨率免ROOT引流脚本开发视频教程(HD超清1080p)

开发文档

Auto.js Pro开发文档
文档尚在完善中,可能有文档描述和代码实际行为有出入的情况。

为什么要使用Auto.js Pro开发脚本,有什么特点?

吸引我使用Auto.js Pro的原因有很多。最主要的几个原因是:

  • Auto.js Pro能开发免ROOT的安卓脚本
  • Auto.js Pro基于节点操作,能开发全分辨率的脚本,自动适配各种安卓机型
  • Auto.js Pro丰富的UI组件,能自定义各种样式的安卓界面
  • Auto.js Pro使用的javascript的语法比较优雅,代码可读性强
  • Auto.js Pro的命令库非常的丰富,接口比较多
  • Auto.js Pro脚本文件体积比较小。1000行的代码,打包后的apk文件只有3-5M,还没有广告

示例代码

 //此代码由飞云脚本圈整理提供(www.feiyunjs.com)
"ui";
frame();
function frame() {
    ui.layout(
        <frame h="*" w="*" >
            <relative
                layout_width="match_parent"
                layout_height="match_parent"
                gravity="bottom|right" >
                <img id="cd_0" layout_gravity="right" w="150px" h="150px" src="@drawable/ic_sentiment_satisfied_black_48dp" rotation="-90" />
                <img id="cd_1" layout_gravity="right" w="150px" h="150px" src="@drawable/ic_sentiment_neutral_black_48dp" rotation="-90" />
                <img id="cd_2" layout_gravity="right" w="150px" h="150px" src="@drawable/ic_sentiment_dissatisfied_black_48dp" rotation="-90" />
                <img id="cd_3" layout_gravity="right" w="150px" h="150px" src="@drawable/ic_sentiment_very_dissatisfied_black_48dp" rotation="-90" />
                <frame margin="11 11 0 0" bg="#ffffff" w="80px" h="80px" ></frame>
                <frame >
                    <img id="jia" layout_gravity="bottom|right" w="150px" h="150px" src="@drawable/ic_add_circle_black_48dp" />
                </frame>
            </relative>
        </frame>
    )
    let FX = true;//真 横向 假 竖向  自行用图片处理软件调整图片方向  横向 图片旋转90度   竖向 图片旋转 -90度
    if (FX) {
        ui.cd_0.setRotation(90);
        ui.cd_1.setRotation(90);
        ui.cd_2.setRotation(90);
        ui.cd_3.setRotation(90);
    } else {
        ui.cd_0.setRotation(-90);
        ui.cd_1.setRotation(-90);
        ui.cd_2.setRotation(-90);
        ui.cd_3.setRotation(-90);
    }
    //c 值是图片的半径 b,d,e值跟随c值 f值为0 展开图标的默认角度
    var c = 75
    let b = c, d = c, e = c, f = 0
    //y 值为真时 四个选项图标才可以有效点击
    //y1 等于假时代表正在展开或收起   
    var y = false, y1 = true;
    ui.cd_0.on("click", () => {
        if (y) {
            toastLog("开心!")
        }
    })
    ui.cd_1.on("click", () => {
        if (y) {
            toastLog("面无表情!")
        }
    })
    ui.cd_2.on("click", () => {
        if (y) {
            toastLog("难过!")
        }
    })
    ui.cd_3.on("click", () => {
        if (y) {
            toastLog("凉凉!")
        }
    })
    ui.jia.on("click", () => {
        threads.start(function () {
            if (y1) {
                y1 = false
                if (y) {
                    for (let i = 0; i < 104; i++) {
                        if (i % 2) {ui.jia.setRotation(f += 6)}
                        ui.cd_0.setPivotY(c += 1)
                        ui.cd_0.setPivotX(c)
                        ui.cd_1.setPivotY(b += 2)
                        ui.cd_1.setPivotX(b)
                        ui.cd_2.setPivotY(d += 3)
                        ui.cd_2.setPivotX(d)
                        ui.cd_3.setPivotY(e += 4)
                        ui.cd_3.setPivotX(e)
                        sleep(1)
                    }
                    y = false
                } else {
                    for (let i = 104; i > 0; i--) {
                        if (i % 2) {ui.jia.setRotation(f -= 6)}
                        ui.cd_0.setPivotY(c -= 1)
                        ui.cd_0.setPivotX(c)
                        ui.cd_1.setPivotY(b -= 2)
                        ui.cd_1.setPivotX(b)
                        ui.cd_2.setPivotY(d -= 3)
                        ui.cd_2.setPivotX(d)
                        ui.cd_3.setPivotY(e -= 4)
                        ui.cd_3.setPivotX(e)
                        sleep(1)
                    }
                    y = true;
                }
                y1 = true
            }
        })
    })
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值