当前位置:文档之家› App Inventor 安卓手机应用开发简易入门2-2

App Inventor 安卓手机应用开发简易入门2-2

第2节宝箱大作战HappyBox
本节概要:
介绍如何使用image组件和使用输入框,组合成一个验证开箱密码的程序,并伴有声音的提示,在Block块编程,引入了Control模块的If-else模块,对此模块进行讲解使用。

学习要点
●用户组件Image和Text的使用
●布局控件的介绍、Media类 sound组件的拖曳使用
●图片和声音资源上传到media栏后的基本使用
实例探究: HappyBox
在输入密码框输入字符,如果正好是设置的宝箱密码,那么开启宝箱并成功放出欢快的音乐;否则有错误提示声,图片不做改变。

图2-2-1:程序初始界面图2-2-2:运行结果
认识新组件
Image 组件:用于显示图片
TextBox:用于输入字符
Sound 组件:用于播放支持的声音格式
图组2-2-3
布局组件:可针对组件进行一定的布局,不使用布局控件时每一行默认只能放一
个一个组件,而且上下紧挨连
图2-2-4
上传资源
在Media 栏点击击upload 文件,即可实现资源文件的上传
图组2-2-5
界面设计与组件构成:
图2-2-6 最终UI 界面
组件的拖放和设置
图2-2-7
上传资源类后对资源的使用,如左图所示,在组件Image1的picture 属性设置为bx1.png
图2-2-8
组件清单:1个Image 组件, 1个水平布局控件。

水平控件目录下:1个标签控件,1个textbox 组件,2个按钮组件,一个声音组件,界面设计和详细表
组件重命名(上节思考课的答案)
保持良好的编程风格,为切换到Block 界面打好坚实的基础,可以更加高效的调试程序,特别是以后会接触多个组件的程序,这点尤为重要。

Tip :命名时可保留其原有组件属性+自己取得名字采用驼峰式各单词首字母大写命名。

左右观察,可以发现,右边的组件重命名之后,可读性大大提高,方便查找。

图组2-2-10
Block块编程拼接搭建
通过对课例的分析,我们知道核心模块式条件是条件选择,那么我们先来学习一下If模块的使用。

IF模块在Built-in control选项里,蓝色方块可以改变if模块的形式
If模块If—else模块If-else if模块If-多层嵌套
图2-2-11:if的Block模块类型
这样看来,我们宝箱密码使用的就是if-else模块了
结构流程图Block对应模块
图2-2-12 流程图和Block模块结构对照图
那么接下来,我们来分步详细的来讲解宝箱大作战的模块拼接
○1BtnOpen按钮click事件框加入if else模块
图2-2-13
○2If else 模块里添加条件判断句
1.
2.
3.
4.
图组2-2-14
○3设置SoundTiShi的声音源,并播放。

Tip:声音的播放必须要先设置音乐才能播放,否则程序会报错,在以后使用它是要仔细留意是否设置。

图组2-2-15
○4BtnOpen的完整代码
图2-2-16
○5BtnClose的完整代码
图2-2-17
完整模块
代码解读
本案例主要涉及了if-else 模块,当条件成立时,改变、图片组件的值为宝箱打开的图片(bx2.png),设置sound组件的声音为素材中的success.mp3,否则播放声音文件wrong.mp3。

测试
Connoect—> Emluater方法与上一节基本一致,不再仔细叙述。

项目的保存和导出
保存: Project ->Save Project
导出: Project ->My Project -> export selected project (aia) to my computer
默认下载目录:我的电脑——我的文档——Download 目录
思维拓展任务
在测试案例过程中,有细心的同学发现,在打开宝箱之后,如果继续再点开始,依然还是会播放音乐,这个是不是有点不太符合一般的情况。

拓展1:能不能在打开的情况下,不做任何操作,更进一步,增加一个标签,在遇到这种情况提示已经打开呢。

拓展2:限制课例的错误打开次数,比如错三次,就不再允许开启了。

带着这两个小问题,请同学积极去思考。

本节结束
下节预告:
下一章节我们将进入手机传感器的教学,用真机来演示,是不是要期待一下呢?。

相关主题