使用AutoJs编写UI的踩坑记录

说明

  • 相对于脚本而言,一般不写UI最好.但有时候要确认用户的选择和输入,不得不使用UI或者悬浮窗…

  • 但两者的功能和实现方法 是一样的.

  • 针对于初次编写UI界面的同学来说,可能会遇到各种各样的坑.

  1. 坑1: 不管你的代码多么少, “ui”; 这个字符串,必须放在第一行,在它之上,不能有任何的代码和注释

  2. 坑2: 整个UI编写过程中,有一个非常重要的原则:
      UI线程中除函数和公用变量外不要写任何流程性质的代码,如果要写流程,必须使用线程

threads.start(function() {
//这里写你的流程代码
});

  1. 坑3:使用线程时,如果要对UI中的数据进行修改,最好使用下面的方法来执行:

threads.start(function() {
//流程代码
ui.run(()=>{
//这里写针对UI的操作
});
});

  1. 坑4: 为了方便管理,所有开的线程,根据不同功能,最好都定义各个线程的变量名

var Thread = threads.start(function() {});

  1. 坑5: 线程函数,不能简写 观察上面的代码,你会发现:
    ui.run()中 我的写法是:

ui.run(()=>{});
而在线程 threads.start();中,我的写法是:

threads.start(function() {});

  1. 坑6: 使用setVisibility()方法时,一定要 importClass(android.view.View);
    括号中的属性包括:
    View.GONE //完全隐藏控件
    View.INVISIBLE //隐藏控件,但保留控件的位置
    View.VISIBLE //默认属性, 显示控件

  2. 坑7: 针对text控件的对齐 gravity 要在 linear 布局中进行设置,例如

linear>
  1. 坑8: 不同机型,不同DPI适配 在线性布局中 务必灵活运用 layout_weight,否则,分辨率改变 DPI改变后,你的UI 会变形

你可能感兴趣的:(软件,ui)