本教程属于参考类教程,使用wxbit平台,建议读者有一定的基础(ai助手的链接、界面布局、素材……)后阅读。
今天,我们开始正式探索App inventor屏幕的丰富功能。
App inventor中,所有的组件设计与逻辑都是依附于屏幕的,一切都设计在一个个屏幕上,被屏幕所分开管辖,不像我们常见的编程设计,屏幕只是展示,有一个程序从头到尾运行。可以说,App inventor中,每个屏幕都是独立的小程序,通过屏幕与屏幕之间的切换,组成一个软件。
这也许跟App inventor的创作初衷有关,为了让更多普通人参与,他必须以使用者的角度开发。在使用者的角度,UI比逻辑更重要,Ui是看得到的,而逻辑不行。所以,App inventor中,UI是更重要的存在,初始界面是UI设计,逻辑依附于屏幕。同样,代码是以屏幕中的组件为基础编写的。
注意:如果你面前的屏幕是创建项目时自动生成的第一块屏幕,会有一些特别的属性,将在文章偏后介绍。
管理
显而易见,屏幕的增添在工作面板的左上角。
列表拉出后可以看到所有已创建的屏幕,并在屏幕间切换,增添。
值得一提的是,“复制屏幕”会将该屏幕的布局、组件、代码块全部复制,仅修改名字。
这四个键是在上方的操作栏中,在组件设计与逻辑设计两个模式下都可见,可以随时切换使用。每个屏幕,有自己独立的界面与逻辑,必须切换才能编辑。
右侧的组件列表展示了该屏幕下的所有布局与组件,可以进行增删与重命名。
属性与逻辑
在组件列表中选中最高一级————屏幕(如上图),就可以在其右侧修改属性。
同时,在逻辑设计中,也有屏幕相关的块,部分与属性交重,部分则不同。
标题
标题与屏幕名称概念是不同的。
屏幕名称是显示在组件列表与屏幕列表的字符,是为了在开发大型程序时方便开发者辨别,目前只能在新建屏幕时更改,初识屏无法更改。
标题是显示在标题栏上的文字。
标题默认与屏幕名称相同,但可以自由更改,不影响屏幕名称。
标题可以在运行时更改与获取。
应用说明
就是说明,用于应用中解释相关信息或填写版权。(右下角时可以拉动的)
点开标题栏上的三个小点——关于,查看
应用说明可以在运行时更改与获取。
水平对齐
居左
居中
居右
水平对齐也可在运行时更改与获取,但注意他的值是数字形式。
含义 | 值 |
---|---|
居左 | 1 |
居中 | 3 |
居右 | 2 |
垂直对齐
居上
居中
居下
垂直对齐可在运行时更改与获取,但注意他的值是数字形式。
含义 | 值 |
---|---|
居上 | 1 |
居中 | 2 |
居下 | 3 |
是否允许滚动
默认否,下图为是的效果。(当布局超过一个屏幕时,滑动条才会显示)
允许滚动后,垂直布局会失效,全部变为居上。
是否允许滚动可在运行时更改与获取,但注意他的值是布尔值(真或假)。
屏幕方向
下表打开自动旋转指在手机设置中打开。
方向(是否旋转) | 关闭自动旋转 | 打开自动旋转 |
---|---|---|
不设方向 | 否 | 是 |
锁定竖屏 | 否 | 否 |
锁定横屏 | 否 | 否 |
自动感应 | 是 | 是 |
用户设定 | 否 | 是 |
同上一屏好理解,注意初始屏选同上一屏默认不设方向。
理解了是否旋转,锁定竖/横屏也好理解。
当然屏幕方向可在运行时更改与获取,但注意他的值是文本(下拉菜单中的英文)
方向 | 文本 |
---|---|
不设方向 | unspecified |
锁定竖屏 | portrait |
锁定横屏 | landscape |
自动感应 | sensor |
用户设定 | user |
同上一屏 | behind |
关于屏幕方向还有一个特殊的代码块,此时的变量“屏幕方向”向上为0,向右为1,向左为3(我也不知道为什么没有2)。这里的“屏幕方向”是一个局部变量,只能在这一组代码块中使用(黄色框中),且设置“屏幕方向”只会更改变量值,并不更改屏幕方向。
注意,属性中的屏幕方向与上图的屏幕方向概念不同!
背景颜色与背景图片
不难理解,自己设定即可。
两者可在运行时更改与获取,但注意他的值是颜色/素材。
是否显示状态栏
下图红色框中的即为状态栏。
是否显示状态栏可在运行时更改与获取,但注意他的值是布尔值。
状态栏颜色
默认为黑,透明时与标题栏同色。
标题栏颜色可在运行时更改与获取,但注意他的值是颜色。
是否显示标题栏
下图红色框中的即为标题栏。
是否显示标题栏可在运行时更改与获取,但注意他的值是布尔值。
标题颜色
默认为白(看起来是黑)。
标题颜色可在运行时更改与获取,但注意他的值是颜色。
标题栏背景色
默认为蓝。
标题栏背景色可在运行时更改与获取,但注意他的值是颜色。
开/关屏动画
默认渐隐。
同屏幕方向,可在运行时更改与获取,值为文本。
其余的代码块
这五个好理解,至于什么错误/授权,自己在测试的时候看
这四个可以直接调用,打开应用设置是系统的应用设置。
下面的代码是有返回值的,需要接在组件后,返回组件名,对生成组件的操作,见右边“任意组件”,通过这个功能,我们可以在运行时构建UI,也可在前期快速构建相似的块。
使用如图,也可接在赋值语句后。
这三个不常用,也简单。
初始屏
当我们开始新建一个项目的时候,就会自动建立一个屏幕,如图中的Screen1。这个屏幕作为整个程序的基础,有很多特性。
可以看到,这个屏幕是无法重命名与删除的,作为初始屏,这是一大限制。
在红框的位置,我们可以更改界面大小,以适应平板尺寸。
我们再看右边的组件属性。
应用包名
应用包名是程序的辨识码,也就是说系统并不认应用的名字,而是认应用包名,平台上默认的包名为“wxbit.”,若需要后续发布应用,则可以相应更改。
下面是一些常见应用的应用包名对照表。
名称 | 应用包名 |
---|---|
com.tencent.mobileqq | |
微信 | com.tencent.mm |
淘宝 | com.taobao.taobao |
京东 | com.jingdong.app.mall |
新浪微博 | com.sina.weibo |
腾讯视频 | com.tencent.qqlive |
QQ浏览器 | com.tencent.mtt |
谷歌浏览器 | com.android.chrome |
高德地图 | com.autonavi.minimap |
滴滴出行 | com.sdu.didi.psnger12306battymole.trainticket |
QQ音乐 | com.tencent.qqmusi |
网易云音乐 | com.netease.cloudmusic |
喜马拉雅 | com.ximalaya.ting.android |
要注意的是,包名中只能包含数字、字母、点和下划线,点为分隔符,将包名分割为多个部分,每部分必须以字母开头。
应用名称
最初新建的时候,新建的是“项目”。项目和应用的概念是不一样的。在App inventor中,新建时,应用名与项目名是相同的,可以自己更改。
要注意的是,一个账号不能有两个同名的项目,但可以有两个同名的应用。“项目”是面向开发者来说的标识,要兼顾机器的储存与管理,“应用”是对于使用者的,发布后以此为名,要考虑通俗易懂。
在App inventor中,对于项目的名称有很大的限制,为了更好的处理;而应用名称,甚至连中文也可以。
图标
没什么好说,自己上传并从素材库添加,作为在手机桌面上看到的图标。
但是,添加是好像不限制图片类型,为了最终效果,还是推荐用icon。
推荐一个图标网站,制作很精美,免费的:https://www.easyicon.net/
窗口大小
会固定为手机尺寸。
主题
制作好的配色方案,但……很丑。
配合主题使用。
这样美观好多。
其余
大型项目的版本追踪,但ai好像没有git的概念,版本更迭比较复杂。
如果涉及网络交互等与别的程序交互,json才是王牌,ai自有的列表格式是不相通的。(也可用代码转)