Auto.js学习笔记17:基础监听事件和UI简单的点击事件操作

目录

events

相关参数

代码示例

注册触摸事件

删除所有事件监听函数

按钮点击事件

Switch

button

timepicker

总结


申明本人使用的autojs是4.1.1版本

events

启用按键监听,例如音量键、Home键。按键监听使用无障碍服务实现,如果无障碍服务未启用会抛出异常并提示开启。

只有这个函数成功执行后, onKeyDown, onKeyUp等按键事件的监听才有效。

该函数在安卓4.3以上才能使用。

相关参数

keys.home 主页键

keys.back 返回键

keys.menu 菜单键

keys.volume_up 音量上键

keys.volume_down 音量下键

代码示例

//启用按键监听
events.observeKey();
//监听音量上键按下
events.onKeyDown("volume_up", function(event){
    toast("音量上");
    unregisterReceiver();
});

//监听音量下键弹起
events.onKeyDown("volume_down", function(event){
    toast("音量下");
});

//监听Home键弹起
events.onKeyDown("home", function(event){
    toast("Home");
});

//监听菜单键按下
events.onKeyDown("menu", function(event){
    toast("菜单键被按下了");
});

注册触摸事件

  • ​ listener {Function} 参数为Point的函数 ​

注册一个触摸监听函数。相当于on("touch", listener)

events.observeTouch();
//注册触摸监听器
events.onTouch(function(s){
    //触摸事件发生会打印出触摸的坐标
    log(s.x + ", " + s.y);
});

删除所有事件监听函数

events.removeAllTouchListeners()

按钮点击事件

Switch

ui局部代码

<vertical id = "setConfigView" w = "*" h = "auto" layout_centerInParent="true" >
      <Switch id = "openSwh"  w = "auto" h = "auto" textStyle = "bold" textColor = "red" 
           text = "无障碍权限   "  textSize="16sp" marginBottom = "15"  marginRight ="10"/>
</vertical>

点击事件代码

 //按钮监听方式
    ui.openSwh.on("check", function(checked) {
        // 用户勾选无障碍服务的选项时,跳转到页面让用户去开启
        if(checked && auto.service == null) {
            app.startActivity({
                action: "android.settings.ACCESSIBILITY_SETTINGS"
            });
            exit();
        }
        if(!checked && auto.service != null){
            auto.service.disableSelf(); //关闭无障碍服务
            ui.openSwh.setChecked(false);
        }
    });

button

ui局部代码

<button id = "testServerAPI" align="center">测试接口数据</button>

点击事件代码


ui.testServerAPI.click(()=>{
        testAPIState = true;
        getServiceInfo(); 
});

timepicker

ui代码

<text id = "timePickerModeText" text = "滑动时间选择:" textColor = "black" textSize="16sp" marginTop="5" />
<timepicker id = "timePickerMode"  timePickerMode="spinner" />

监听事件代码

//滑动时间选择
ui.timePickerMode.setIs24HourView(true);//设置当前时间控件为24小时制
ui.timePickerMode.setHour(9);   //设置当前小时
ui.timePickerMode.setMinute(0); //设置当前分(0-59)
ui.timePickerMode.setOnTimeChangedListener({
      onTimeChanged: function (v, h, m) {
      //h 获取的值 为24小时格式
      wxAutoConfigObj.timingTime = h + ":" + m ;
      ui.timePickerModeText.setText("滑动时间选择: " + wxAutoConfigObj.timingTime);
   }
});

总结

记住即可,以上都是常用的事件处理,每天学习一点点哈嘻。

光看不敲是没用的
看后一定要去实践
一定要去敲代码
一定要去运行试错
这样才是有意义的学习

猜你喜欢

转载自blog.csdn.net/piyangbo/article/details/124946639