  |  |   |    | 
                         
AIWROK苹果IOS线条类[Line]复杂示例
 - // 复杂应用控制器示例
 
 - // 这个示例展示如何创建一个多标签页的应用控制器,结合UI界面和HID设备操作功能
 
  
- // 1. 创建TabView作为主界面容器
 
 - var mainTabView = new TabView();
 
  
- // 2. 设置标签页标题
 
 - mainTabView.setTitles(["应用管理", "控制器", "自动化脚本", "设置"]);
 
  
- // 3. 显示TabView并加载各标签页内容
 
 - mainTabView.show(() => {
 
 -     printl("复杂应用控制器已启动");
 
 -     
 
 -     // 加载各标签页内容
 
 -     mainTabView.addView(0, createAppManagerView());  // 应用管理
 
 -     mainTabView.addView(1, createControllerView());   // 控制器
 
 -     mainTabView.addView(2, createAutomationView());   // 自动化脚本
 
 -     mainTabView.addView(3, createSettingsView());     // 设置
 
 -     
 
 -     printl("所有标签页内容已加载完成");
 
 - });
 
  
- // ====================== 标签页1:应用管理 ======================
 
 - function createAppManagerView() {
 
 -     var v = new Vertical();
 
 -     
 
 -     // 返回按钮
 
 -     var backButton = new Button();
 
 -     backButton.setText("关闭控制器");
 
 -     backButton.setColor(255, 0, 0);
 
 -     backButton.onClick(() => {
 
 -         printl("控制器已关闭");
 
 -         mainTabView.dismiss();
 
 -     });
 
 -     v.addView(backButton);
 
 -     
 
 -     // 标题标签
 
 -     var titleLabel = new Label();
 
 -     titleLabel.setText("应用管理中心");
 
 -     titleLabel.setTextColor(0, 0, 255);
 
 -     v.addView(titleLabel);
 
 -     
 
 -     // 创建常用应用按钮组
 
 -     var appsVertical = new Vertical();
 
 -     
 
 -     // 抖音应用
 
 -     var douyinButton = createAppButton("抖音", 25, 10, 130);
 
 -     douyinButton.onClick(() => {
 
 -         printl("启动抖音应用");
 
 -         // 实际项目中可使用app.openApp()打开应用
 
 -         // app.openApp("com.ss.android.ugc.aweme");
 
 -         mainTabView.dismiss();
 
 -         hid.home();
 
 -         // 模拟打开应用
 
 -         setTimeout(() => {
 
 -             printl("抖音应用已启动");
 
 -         }, 2000);
 
 -     });
 
 -     appsVertical.addView(douyinButton);
 
 -     
 
 -     // 微信应用
 
 -     var wechatButton = createAppButton("微信", 25, 10, 130);
 
 -     wechatButton.onClick(() => {
 
 -         printl("启动微信应用");
 
 -         mainTabView.dismiss();
 
 -         hid.home();
 
 -         // 模拟打开应用
 
 -         setTimeout(() => {
 
 -             printl("微信应用已启动");
 
 -         }, 2000);
 
 -     });
 
 -     appsVertical.addView(wechatButton);
 
 -     
 
 -     // 浏览器应用
 
 -     var browserButton = createAppButton("浏览器", 25, 10, 130);
 
 -     browserButton.onClick(() => {
 
 -         printl("启动浏览器应用");
 
 -         mainTabView.dismiss();
 
 -         hid.home();
 
 -         // 模拟打开应用
 
 -         setTimeout(() => {
 
 -             printl("浏览器应用已启动");
 
 -         }, 2000);
 
 -     });
 
 -     appsVertical.addView(browserButton);
 
 -     
 
 -     // 添加应用组到视图
 
 -     v.addView(appsVertical);
 
 -     
 
 -     // 最近使用应用按钮
 
 -     var recentsButton = new Button();
 
 -     recentsButton.setText("查看最近使用应用");
 
 -     recentsButton.setColor(0, 150, 0);
 
 -     recentsButton.onClick(() => {
 
 -         printl("打开最近使用应用列表");
 
 -         mainTabView.dismiss();
 
 -         hid.recents();
 
 -     });
 
 -     v.addView(recentsButton);
 
 -     
 
 -     return v;
 
 - }
 
  
- // ====================== 标签页2:控制器 ======================
 
 - function createControllerView() {
 
 -     var v = new Vertical();
 
 -     
 
 -     // 返回按钮
 
 -     var backButton = new Button();
 
 -     backButton.setText("关闭控制器");
 
 -     backButton.setColor(255, 0, 0);
 
 -     backButton.onClick(() => {
 
 -         printl("控制器已关闭");
 
 -         mainTabView.dismiss();
 
 -     });
 
 -     v.addView(backButton);
 
 -     
 
 -     // 标题标签
 
 -     var titleLabel = new Label();
 
 -     titleLabel.setText("设备控制器");
 
 -     titleLabel.setTextColor(0, 0, 255);
 
 -     v.addView(titleLabel);
 
 -     
 
 -     // 基本操作按钮组
 
 -     var basicOps = new Vertical();
 
 -     
 
 -     // 返回主页按钮
 
 -     var homeButton = new Button();
 
 -     homeButton.setText("返回主页");
 
 -     homeButton.setColor(255, 140, 0);
 
 -     homeButton.onClick(() => {
 
 -         printl("返回设备主页");
 
 -         mainTabView.dismiss();
 
 -         hid.home();
 
 -     });
 
 -     basicOps.addView(homeButton);
 
 -     
 
 -     // 方向滑动控制
 
 -     var swipeControls = new Horizontal();
 
 -     
 
 -     // 左滑按钮
 
 -     var leftSwipeButton = new Button();
 
 -     leftSwipeButton.setText("左滑");
 
 -     leftSwipeButton.setColor(0, 0, 255);
 
 -     leftSwipeButton.setWidth(80);
 
 -     leftSwipeButton.onClick(() => {
 
 -         printl("执行左滑操作");
 
 -         mainTabView.dismiss();
 
 -         hid.swipHPercent(0.8, 0.5, 0.2, 50, 500, 50);
 
 -     });
 
 -     swipeControls.addView(leftSwipeButton);
 
 -     
 
 -     // 右滑按钮
 
 -     var rightSwipeButton = new Button();
 
 -     rightSwipeButton.setText("右滑");
 
 -     rightSwipeButton.setColor(0, 0, 255);
 
 -     rightSwipeButton.setWidth(80);
 
 -     rightSwipeButton.onClick(() => {
 
 -         printl("执行右滑操作");
 
 -         mainTabView.dismiss();
 
 -         hid.swipHPercent(0.2, 0.5, 0.8, 50, 500, 50);
 
 -     });
 
 -     swipeControls.addView(rightSwipeButton);
 
 -     
 
 -     // 上滑按钮
 
 -     var upSwipeButton = new Button();
 
 -     upSwipeButton.setText("上滑");
 
 -     upSwipeButton.setColor(0, 0, 255);
 
 -     upSwipeButton.setWidth(80);
 
 -     upSwipeButton.onClick(() => {
 
 -         printl("执行上滑操作");
 
 -         mainTabView.dismiss();
 
 -         hid.swipVPercent(0.5, 0.8, 0.5, 0.2, 50, 500, 50);
 
 -     });
 
 -     swipeControls.addView(upSwipeButton);
 
 -     
 
 -     // 下滑按钮
 
 -     var downSwipeButton = new Button();
 
 -     downSwipeButton.setText("下滑");
 
 -     downSwipeButton.setColor(0, 0, 255);
 
 -     downSwipeButton.setWidth(80);
 
 -     downSwipeButton.onClick(() => {
 
 -         printl("执行下滑操作");
 
 -         mainTabView.dismiss();
 
 -         hid.swipVPercent(0.5, 0.2, 0.5, 0.8, 50, 500, 50);
 
 -     });
 
 -     swipeControls.addView(downSwipeButton);
 
 -     
 
 -     // 添加滑动控制到基本操作
 
 -     basicOps.addView(swipeControls);
 
 -     
 
 -     // 添加基本操作到视图
 
 -     v.addView(basicOps);
 
 -     
 
 -     // 屏幕中心点击按钮
 
 -     var centerClickButton = new Button();
 
 -     centerClickButton.setText("点击屏幕中心");
 
 -     centerClickButton.setColor(128, 0, 128);
 
 -     centerClickButton.onClick(() => {
 
 -         printl("点击屏幕中心位置");
 
 -         mainTabView.dismiss();
 
 -         hid.clickPercent(0.5, 0.5);
 
 -     });
 
 -     v.addView(centerClickButton);
 
 -     
 
 -     // 屏幕区域点击面板
 
 -     var clickPanelLabel = new Label();
 
 -     clickPanelLabel.setText("点击区域面板");
 
 -     v.addView(clickPanelLabel);
 
 -     
 
 -     // 创建3x3点击网格
 
 -     var clickGrid = new Vertical();
 
 -     for (var y = 0; y < 3; y++) {
 
 -         var row = new Horizontal();
 
 -         for (var x = 0; x < 3; x++) {
 
 -             var areaButton = new Button();
 
 -             areaButton.setText(x + "," + y);
 
 -             areaButton.setColor(100, 100, 100);
 
 -             areaButton.setWidth(60);
 
 -             areaButton.setHeight(40);
 
 -             
 
 -             // 闭包保存x,y值
 
 -             (function(gridX, gridY) {
 
 -                 areaButton.onClick(() => {
 
 -                     var clickX = 0.25 + gridX * 0.25;
 
 -                     var clickY = 0.25 + gridY * 0.25;
 
 -                     printl(`点击区域 (${gridX},${gridY}) - 百分比坐标 (${clickX.toFixed(2)},${clickY.toFixed(2)})`);
 
 -                     mainTabView.dismiss();
 
 -                     hid.clickPercent(clickX, clickY);
 
 -                 });
 
 -             })(x, y);
 
 -             
 
 -             row.addView(areaButton);
 
 -         }
 
 -         clickGrid.addView(row);
 
 -     }
 
 -     v.addView(clickGrid);
 
 -     
 
 -     return v;
 
 - }
 
  
- // ====================== 标签页3:自动化脚本 ======================
 
 - function createAutomationView() {
 
 -     var v = new Vertical();
 
 -     
 
 -     // 返回按钮
 
 -     var backButton = new Button();
 
 -     backButton.setText("关闭控制器");
 
 -     backButton.setColor(255, 0, 0);
 
 -     backButton.onClick(() => {
 
 -         printl("控制器已关闭");
 
 -         mainTabView.dismiss();
 
 -     });
 
 -     v.addView(backButton);
 
 -     
 
 -     // 标题标签
 
 -     var titleLabel = new Label();
 
 -     titleLabel.setText("自动化脚本");
 
 -     titleLabel.setTextColor(0, 0, 255);
 
 -     v.addView(titleLabel);
 
 -     
 
 -     // 脚本选择复选框组
 
 -     var scriptOptions = new Vertical();
 
 -     
 
 -     var scrollScriptCheck = new CheckBox();
 
 -     scrollScriptCheck.setText("自动滚动脚本");
 
 -     scriptOptions.addView(scrollScriptCheck);
 
 -     
 
 -     var clickScriptCheck = new CheckBox();
 
 -     clickScriptCheck.setText("自动点击脚本");
 
 -     scriptOptions.addView(clickScriptCheck);
 
 -     
 
 -     var inputScriptCheck = new CheckBox();
 
 -     inputScriptCheck.setText("自动输入脚本");
 
 -     scriptOptions.addView(inputScriptCheck);
 
 -     
 
 -     v.addView(scriptOptions);
 
 -     
 
 -     // 执行脚本按钮
 
 -     var runScriptButton = new Button();
 
 -     runScriptButton.setText("执行选中脚本");
 
 -     runScriptButton.setColor(0, 150, 0);
 
 -     runScriptButton.onClick(() => {
 
 -         printl("开始执行自动化脚本...");
 
 -         mainTabView.dismiss();
 
 -         
 
 -         // 检查各脚本复选框状态并执行对应脚本
 
 -         if (scrollScriptCheck.isSelect()) {
 
 -             executeScrollScript();
 
 -         }
 
 -         
 
 -         if (clickScriptCheck.isSelect()) {
 
 -             executeClickScript();
 
 -         }
 
 -         
 
 -         if (inputScriptCheck.isSelect()) {
 
 -             executeInputScript();
 
 -         }
 
 -         
 
 -         if (!scrollScriptCheck.isSelect() && !clickScriptCheck.isSelect() && !inputScriptCheck.isSelect()) {
 
 -             printl("请至少选择一个脚本");
 
 -         }
 
 -     });
 
 -     v.addView(runScriptButton);
 
 -     
 
 -     return v;
 
 - }
 
  
- // ====================== 标签页4:设置 ======================
 
 - function createSettingsView() {
 
 -     var v = new Vertical();
 
 -     
 
 -     // 返回按钮
 
 -     var backButton = new Button();
 
 -     backButton.setText("关闭控制器");
 
 -     backButton.setColor(255, 0, 0);
 
 -     backButton.onClick(() => {
 
 -         printl("控制器已关闭");
 
 -         mainTabView.dismiss();
 
 -     });
 
 -     v.addView(backButton);
 
 -     
 
 -     // 标题标签
 
 -     var titleLabel = new Label();
 
 -     titleLabel.setText("控制器设置");
 
 -     titleLabel.setTextColor(0, 0, 255);
 
 -     v.addView(titleLabel);
 
 -     
 
 -     // 显示设置项
 
 -     var showLinesCheck = new CheckBox();
 
 -     showLinesCheck.setText("显示辅助线条");
 
 -     v.addView(showLinesCheck);
 
 -     
 
 -     var soundEffectsCheck = new CheckBox();
 
 -     soundEffectsCheck.setText("启用声音反馈");
 
 -     v.addView(soundEffectsCheck);
 
 -     
 
 -     var autoCloseCheck = new CheckBox();
 
 -     autoCloseCheck.setText("执行后自动关闭");
 
 -     // CheckBox类没有setSelected方法,移除这行代码
 
 -     v.addView(autoCloseCheck);
 
 -     
 
 -     // 保存设置按钮
 
 -     var saveSettingsButton = new Button();
 
 -     saveSettingsButton.setText("保存设置");
 
 -     saveSettingsButton.setColor(0, 150, 0);
 
 -     saveSettingsButton.onClick(() => {
 
 -         printl("设置已保存");
 
 -         
 
 -         // 这里可以添加保存设置到存储的逻辑
 
 -         // 例如使用配置文件或本地存储
 
 -         var settings = {
 
 -             showLines: showLinesCheck.isSelect(),
 
 -             soundEffects: soundEffectsCheck.isSelect(),
 
 -             autoClose: autoCloseCheck.isSelect()
 
 -         };
 
 -         
 
 -         printl(JSON.stringify(settings));
 
 -     });
 
 -     v.addView(saveSettingsButton);
 
 -     
 
 -     // 关于信息
 
 -     var aboutLabel = new Label();
 
 -     aboutLabel.setText("复杂应用控制器 v1.0\n基于AIWROK开发平台");
 
 -     aboutLabel.setTextColor(100, 100, 100);
 
 -     v.addView(aboutLabel);
 
 -     
 
 -     return v;
 
 - }
 
  
- // ====================== 辅助函数 ======================
 
  
- // 创建应用按钮的辅助函数
 
 - function createAppButton(title, r, g, b) {
 
 -     var btn = new Button();
 
 -     btn.setText(title);
 
 -     btn.setColor(r, g, b);
 
 -     btn.setTextColor(255, 255, 255);
 
 -     btn.setHeight(40);
 
 -     return btn;
 
 - }
 
  
- // 自动化脚本函数
 
 - function executeScrollScript() {
 
 -     printl("执行自动滚动脚本...");
 
 -     
 
 -     // 执行一组上滑和下滑操作
 
 -     for (var i = 0; i < 3; i++) {
 
 -         // 上滑
 
 -         hid.swipVPercent(0.5, 0.8, 0.5, 0.2, 50, 1000, 100);
 
 -         sleep(1500); // 等待1.5秒
 
 -         
 
 -         // 下滑
 
 -         hid.swipVPercent(0.5, 0.2, 0.5, 0.8, 50, 1000, 100);
 
 -         sleep(1500); // 等待1.5秒
 
 -     }
 
 -     
 
 -     printl("自动滚动脚本执行完成");
 
 - }
 
  
- function executeClickScript() {
 
 -     printl("执行自动点击脚本...");
 
 -     
 
 -     // 在屏幕上随机点击5次
 
 -     for (var i = 0; i < 5; i++) {
 
 -         var randomX = Math.random();
 
 -         var randomY = Math.random();
 
 -         printl(`随机点击位置: (${randomX.toFixed(2)}, ${randomY.toFixed(2)})`);
 
 -         hid.clickPercent(randomX, randomY);
 
 -         sleep(1000); // 等待1秒
 
 -     }
 
 -     
 
 -     printl("自动点击脚本执行完成");
 
 - }
 
  
- function executeInputScript() {
 
 -     printl("执行自动输入脚本...");
 
 -     
 
 -     // 输入一段文本
 
 -     hid.inputSimple("Hello, this is an automated input test!\n");
 
 -     
 
 -     // 输入数字
 
 -     hid.inputSimple("1234567890");
 
 -     
 
 -     printl("自动输入脚本执行完成");
 
 - }
 
  
- // 模拟sleep函数
 
 - function sleep(ms) {
 
 -     var start = new Date().getTime();
 
 -     while (new Date().getTime() - start < ms) {
 
 -         // 空循环等待
 
 -     }
 
 - }
 
  
- // 注意事项:
 
 - // 1. 本示例结合了UI界面和HID设备操作功能
 
 - // 2. 在实际使用中,某些功能可能需要根据具体的设备环境进行调整
 
 - // 3. 如需扩展更多功能,可以在现有框架基础上添加新的标签页和功能模块
 
  复制代码 
 
  |  |    |  |   |  
  |