Autox.js和Auto.js4.1.1手机编辑器不好用我自己写了一个编辑器

功能有 撤销 重做 格式化 跳转关键词

下面展示一些 内联代码片

javascript 复制代码
"ui";
ui.layout(
<drawer id="drawer">
   <vertical>
      <appbar>
         <toolbar id="toolbar"title=""h="20"/>
      </appbar>
      <horizontal bg="#009688"layout_gravity="center_horizontal"w="auto">
         <text id="撤销"text="撤销"w="50"gravity="center"color="#ffffff"/>
         <text id="重做"text="重做"w="50"gravity="center"color="#ffffff"/>
         <text id="运行"text="运行"w="50"gravity="center"color="#ffffff"/>
         <text id="保存"text="保存"w="50"gravity="center"color="#ffffff"/>
      </horizontal>
      <com.text.txt.AEditor.AEtxt id="代码"w="*"h="*"bg="#2e2e2e"textSize="0"/>
   </vertical>
   <vertical layout_gravity="left" bg="#ffffff" w="280">
      <img w="280" h="200" scaleType="fitXY" src="http://images.shejidaren.com/wp-content/uploads/2014/10/023746fki.jpg"/>
      <horizontal bg="?selectableItemBackground" w="*">
         <img w="50" h="50" padding="16"src="@drawable/ic_android_black_48dp"/>
         <Switch id="无障碍服务"text="无障碍服务"checked="{{auto.service != null}}"w="200"h="50"/>
      </horizontal>
      <horizontal bg="?selectableItemBackground" w="*">
         <img w="50" h="50" padding="16" src="@drawable/ic_settings_black_48dp"/>
         <Switch id="悬浮窗权限"text="悬浮窗权限"checked="{{floaty.checkPermission()}}"w="200"h="50"/>
      </horizontal>
   </vertical>
</drawer>
);
let 配置=storages.create("ABC123458855584854");
let 代码=配置.get("代码");//读出
if(代码){
   ui.代码.set(代码)
}
//创建选项菜单(右上角)
ui.emitter.on("create_options_menu",menu=>{
   menu.add("格式化");
   menu.add("跳转");
   menu.add("日志");
});
//监听选项菜单点击
ui.emitter.on("options_item_selected",(e,item)=>{
   switch(item.getTitle()){
   case "格式化":
      ui.代码.geshihua()
   case "跳转":
      ui.代码.tiaozhuan()
      break;
   case "日志":
      app.startActivity("console");
      break;
   }
   e.consumed=true;
});
activity.setSupportActionBar(ui.toolbar);
//让工具栏左上角可以打开侧拉菜单
ui.toolbar.setupWithDrawer(ui.drawer);
ui.emitter.on("resume",function(){
   ui.无障碍服务.checked=auto.service !=null;
   ui.悬浮窗权限.checked=floaty.checkPermission()!=false
});
ui.悬浮窗权限.on("click",function(){
   importClass(android.content.Intent);
   importClass(android.net.Uri);
   importClass(android.provider.Settings);
   var intent=new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
   Uri.parse("package:"+context.getPackageName()));
   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   app.startActivity(intent);
});
ui.无障碍服务.on("click",function(){
   if(auto.service==null){
      app.startActivity({
         action:"android.settings.ACCESSIBILITY_SETTINGS"
      });
   }
});
ui.撤销.click(()=>{
   ui.代码.chexiao()
})
ui.重做.click(()=>{
   ui.代码.chongzuo()
})
ui.保存.click(()=>{
   let 代码=ui.代码.text()
   配置.put("代码",代码);//写入
   files.write("/sdcard/脚本/amain.js",代码);
   toast("保存完成")
})
ui.运行.click(()=>{
   if(ui.运行.text()=="结束"){
      ui.运行.setText("运行")
      引擎()
      return
   }
   ui.运行.setText("结束")
   let 代码=ui.代码.text()
   engines.execScript("引擎",代码);
   配置.put("代码",代码);//写入
   files.write("/sdcard/脚本/amain.js",代码);
})
function 引擎(){
   let q=engines.all()
   for(let i=0;i < q.length;i++){
      let m=new File(q[i].source).getName()
      if(m=="引擎"){
         q[i].forceStop()
         toastLog("结束了引擎")
      }
   }
}
setInterval(()=>{
   if(ui.运行.text()=="结束"){
      let q=engines.all()
      if(q.length==1){
         ui.运行.setText("运行")
      }
   }
},2000);
相关推荐
記億揺晃着的那天1 天前
Vue + Element UI 表格自适应高度如何做?
javascript·vue.js·ui
Larry_Yanan1 天前
QML学习笔记(三十一)QML的Flow定位器
java·前端·javascript·笔记·qt·学习·ui
Larry_Yanan1 天前
QML学习笔记(三十)QML的布局器(Layouts)
c++·笔记·qt·学习·ui
KC_612 天前
MySQL索引失效的十大场景与性能优化实战
ui
不伤欣2 天前
Unity Mask镂空效果(常用于新手引导或高亮显示UI元素)
游戏·ui·unity·游戏引擎
偶尔的鼠标人2 天前
Avalonia中,使用DataTable类型作为DataGrid的ItemSource 数据源
ui·c#·avalonia
左手吻左脸。2 天前
Element UI表格中根据数值动态设置字体颜色
vue.js·ui·elementui
我的xiaodoujiao2 天前
从 0 到 1 搭建 Python 语言 Web UI自动化测试学习系列 8--基础知识 4--常用函数 2
前端·python·测试工具·ui
我命由我123452 天前
Photoshop - Photoshop 工具栏(10)透视裁剪工具
经验分享·笔记·学习·ui·职场和发展·职场发展·photoshop
ziyue75752 天前
vue修改element-ui的默认的class
前端·vue.js·ui