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 天前
如何解决 Photoshop 中的“暂存盘已满”错误
ui·photoshop
伊织code2 天前
GraphRAG-Local-UI - 基于 GraphRAG 支持本地的聊天UI
ui·llm·rag·graphrag·local-ui
Avalon7122 天前
UniVue大版本更新:UniVue2.0.0-preview
游戏·ui·unity·c#
iQM753 天前
TinyVue:一款轻量级且功能强大的Vue UI组件库
前端·javascript·vue.js·ui·jenkins·excel
Logrus IT4 天前
如何提高游戏本地化的质量使用QE门户网站Logrus IT
ui·软件工程·玩游戏
Stu古月月仔5 天前
虚幻引擎-设置UI自适应屏幕大小
ui·游戏引擎·虚幻
coffee_baby5 天前
状态模式原理剖析
java·ui·ajax·设计模式·状态模式
宋小土6 天前
Naive UI 选择器 Select 的:render-label 怎么使用(Vue3 + TS)
开发语言·前端·javascript·vue.js·ui
河西石头6 天前
WPF之UI进阶--控件样式与样式模板及词典
ui·wpf·样式·模板·控件样式·样式模板·样式词典