当前位置:网站首页>Auto.js学习笔记5:autojs的UI界面基础篇1
Auto.js学习笔记5:autojs的UI界面基础篇1
2022-06-12 09:20:00 【PYB3】
申明本人使用的autojs是4.1.1版本
目录
UI定义
带有ui的脚本的的最前面必须使用"ui";指定ui模式,否则脚本将不会以ui模式运行。
"ui";
ui.layout(
<horizontal>
<button text="第一个按钮"/>
<button text="第二个按钮"/>
</horizontal>
);控件通用基础属性
w:
View的宽度,是属性width的缩写形式。可以设置的值为*, auto和具体数值。其中*表示宽度尽量填满父布局,而auto表示宽度将根据View的内容自动调整(自适应宽度)。
h:
View的高度,是属性height的缩写形式。可以设置的值为*, auto和具体数值。其中*表示宽度尽量填满父布局,而auto表示宽度将根据View的内容自动调整(自适应宽度)。
如果不设置该属性,则不同的控件和布局有不同的默认高度,大多数为auto。
id:
View的id,用来区分一个界面下的不同控件和布局,一个界面的id在同一个界面下通常是唯一的,也就是一般不存在两个View有相同的id。id属性也是连接xml布局和JavaScript代码的桥梁,在代码中可以通过一个View的id来获取到这个View,并对他进行操作(设置点击动作、设置属性、获取属性等)。
gravity:
View的"重力"。用于决定View的内容相对于View的位置,可以设置的值为:
left靠左right靠右top靠顶部bottom靠底部center居中center_vertical垂直居中center_horizontal水平居中
layout_gravity:
View在布局中的"重力",用于决定View本身在他的父布局的位置,可以设置的值和gravity属性相同。注意把这个属性和gravity属性区分开来。
margin:
margin为View和其他View的间距,即外边距。margin属性包括四个值:
marginLeft左外边距marginRight右外边距marginTop上外边距marginBottom下外边距
padding:
View和他的自身内容的间距,也就是内边距。注意和margin属性区分开来,margin属性是View之间的间距,而padding是View和他自身内容的间距。举个例子,一个文本控件的padding也即文本控件的边缘和他的文本内容的间距,paddingLeft即文本控件的左边和他的文本内容的间距。
bg:
View的背景。其值可以是一个链接或路径指向的图片,或者RGB格式的颜色,或者其他背景。
visibility:
View的可见性,该属性可以决定View是否显示出来。其值可以为:
gone不可见。visible可见。默认情况下View都是可见的。invisible不可见,但仍然占用位置。
rotation:
View的旋转角度。通过该属性可以让这个View顺时针旋转一定的角度。例如rotation="90"可以让他顺时针旋转90度。
marginTop:
View的上外边距。如果该属性和margin属性指定的值冲突,则在后面的属性生效,前面的属性无效。
文本控件:text
文本控件用于显示文本,可以控制文本的字体大小,字体颜色,字体等。
text:
文本控件用于显示文本,可以控制文本的字体大小,字体颜色,字体等。
设置文本的内容。例如text="测试内容"。
textColor:
设置字体的颜色,可以是RGB格式的颜色(例如#ff00ff),或者颜色名称(例如red, green等)。
示例, 红色字体:<text text="红色字体" textColor="red"/>
textStyle:
设置字体的样式,比如斜体、粗体等。可选的值为:
- bold 加粗字体
- italic 斜体
- normal 正常字体
可以用或("|")把他们组合起来,比如粗斜体为"bold|italic"。
lines:
设置文本控件的行数。即使文本内容没有达到设置的行数,控件也会留出相应的宽度来显示空白行;如果文本内容超出了设置的行数,则超出的部分不会显示。
textSize:
设置字体的大小,单位一般是sp。按照Material Design的规范,正文字体大小为14sp,标题字体大小为18sp,次标题为16sp。
maxLines:
设置文本控件的最大行数。
ellipsize:
设置文本的省略号位置。文本的省略号会在文本内容超出文本控件时显示。可选的值为:
end在文本末尾显示省略号marquee跑马灯效果,文本将滚动显示middle在文本中间显示省略号none不显示省略号start在文本开头显示省略号
autoLink:
控制是否自动找到url和电子邮件地址等链接,并转换为可点击的链接。默认值为“none”。
设置该值可以让文本中的链接、电话等变成可点击状态。
可选的值为以下的值以其通过或("|")的组合:
all匹配所有连接、邮件、地址、电话email匹配电子邮件地址map匹配地图地址none不匹配 (默认)phone匹配电话号码web匹配URL地址
ems:
当设置该属性后,TextView显示的字符长度(单位是em),超出的部分将不显示,或者根据ellipsize属性的设置显示省略号。
界面UI例子
"ui";
ui.layout(
<relative w = "*" h = "*">
<vertical w = "*" h = "auto" gravity = "center" layout_centerInParent="true">
<text id = "textTitleHintTxt" textStyle = "bold" padding="15 10 15 10"
marginBottom = '5' bg = "#34b1e7" textColor = "black" textSize="26sp">欢迎使用</text>
<text id = "textHintTxt" textStyle = "italic" marginTop = '10dp' padding="3 1 3 1" bg = "#34b1e7" textColor = "black" textSize="16sp">描述</text>
<vertical >
<input id = "countIt" digit="1234567890" singleLine = "true" hint="输入过期天次数" ></input>
<text id = "bottmHintTxt" w = "*" text = "重要提示语句:无" gravity = "center" marginBottom = "15" layout_alignParentBottom="true" textStyle = "bold" padding="0 10 15 0" textColor = "black"/>
</relative>
);结语
学过Android原生开发的会很快适应autojs的ui界面开发,没太大难度,根据文档编写即可,后面一些控件文档并未详细描述,陆续我也会记录在笔记里。
光看不敲是没用的
看后一定要去实践
一定要去敲代码
一定要去运行试错
这样才是有意义的学习
边栏推荐
- 更改tabledata列名
- Several ways to restart kubernetes pod
- Principle analysis of mongodb storage engine wiredtiger
- 剑指 Offer II 016. 不含重复字符的最长子字符串-滑动窗口
- mySql学习记录——二、mySql建表命令
- Share the basic knowledge of software testing and write something you don't know
- Countdownlatch example
- Technology cloud report: how will the industrial Internet rebuild the security boundary in 2022?
- Black screen solution for computer boot
- IV Transforming regular expressions into finite state automata: DFA minimization
猜你喜欢
Selenium面试题分享

Distributed transactions - Theoretical Overview
![Sword finger offer:[day 8 dynamic planning (simple)] --- > frog jumping on steps](/img/0a/65bc44850e52204af278e50a8f86eb.jpg)
Sword finger offer:[day 8 dynamic planning (simple)] --- > frog jumping on steps

MySQL安装

IV Transforming regular expressions into finite state automata: DFA minimization
功能测试面试常见的技术问题,总结好了你不看?

NiO principle

ThreadLocal

QQ,微信能聊天都靠它(socket)?
How should the test plan be written? A thought teaches you
随机推荐
JVM garbage collection
Definition of polar angle and its code implementation
Test case and bug description specification reference
Semaphore flow control semaphore
Mysql database ignores case
How to write test cases?
Binary tree calculation problem
What are the software testing requirements analysis methods? Let's have a look
The onbindviewholder of recyclerview is called twice at the same time
电阻的作用有哪些?(超全)
Principle analysis of mongodb storage engine wiredtiger
consul 配置相关
软件测试需求分析方法有哪些,一起来看看吧
Machine learning notes - circular neural network memo list
Basic knowledge of Linear Algebra -- concepts and relationships of common matrices
day5-x
Minimum transfer times
解决当打开Unity时 提示项目已经打开,而自己之前并没有打开过(可能之前异常关闭)的问题
(12) Interactive component selectable
ThreadLocal