文中有些地方摘自微博名为老巫婆的好心老师的翻译教程《App

Inventor编程实例及指南》。博文地址:http://blog.sina.com.cn/s/articlelist_1646365593_0_1.html

感谢前辈为我们都做的探索工作,让我的App

Inventor学习之旅得以顺利进行!​

Step3:添加猫叫声(喵呜~)

图1-添加Sound组件

从Media(多媒体)组件面板中将Sound组件拖入至屏幕,如上图所示,不管你拖至哪里,它始终会落在屏幕的下方(非可视区),非可视组件在应用中发挥特定作用,但不会显示在用户界面中(也就是在手机屏幕上是看不到的)。

接下来设置Sound1的Source属性为meow.mp3,Source属性为meow.mp3,同猫咪图片一样,需要从电脑中加载声音文件meow.mp3。加载完成后,Media列表中将出现kitty.png与meow.mp3两个文件。如下图所示:

图2-Media列表

Step4:添加组件行为

到现在为止,我们才刚刚完成准备工作,接下来,我们要设置组件的行为,也就是当我们触摸屏幕的时候,喵星人会发出萌萌的声音。现在使用块编辑器来实现点击Button产生猫叫声的功能。单击设计器右上角的“Blocks”按钮切换到块编辑器。在块编辑器窗口中,可以为组件设定行为:做什么以及何时做。此处是让小猫按钮在用户点击它时播放声音。如果把组件比作菜谱中的原料,那么块(Blocks)则相当于烹饪过程说明。

图3-块编辑器

在块编辑器窗口的左侧,“Blocks”标题下面,可以看到许多分属不同类别的按钮,其中包括了我们在设计器中创建的所有组件:Screen1、Button1、Label1以及Sound1,点击它们就像打开抽屉,将看到一组适用于该组件的可选程序块(Blocks)。点击Button1打开抽屉,显示了与Button有关的程序块,可以用它们来设置Button的行为,最上面的Block就是Button1.Click,如下图所示:

图4-Button组件的相关行为(类似于Java里的方法)

单击标有Button1.Click的块并将其拖到工作区。注意,Button1.Click这个块上包含了when。凡是包含when的块都被称为事件处理程序,用来定义当组件上发生了某种特定事件时,应用该做什么。在本例中,当用户点击猫咪(其实是按钮)时发生了有趣的事情,如下图所示。下面我们将在程序中添加一些块,来响应发生的事件。

图5-定义“Button.Click”块来响应用户的点击事件

​ 在块编辑器中点击Sound1打开抽屉,拖出“call

Sound1.Play”块(之前将Sound1的Source属性设置为meow.pm3)。注意,块“call

Sound1.Play”的形状恰好可以嵌入Button1.Click块中标有“do”的缺口。App

Inventor的这种设置,确保只有特定的块可以组合在一起,这样确保了连在一起的块可以协同工作。标有call的块用来定义组件的行为。在本例中,这两个块结合在一起,构成一个单元,如图1-9,两个块连接到一起时,你会听到“啪”的一声。

图6-当按钮按下播放声音

上面的程序块的意思:当按钮(猫咪)被按下,播放猫叫的声音,有没有觉得编程很巧妙呢?到这里,小伙伴们感激测试一下你的app吧!逗逗它吧!“喵呜~喵呜~”至此,一个简单的“HelloKitty”就做好啦!赶紧将app发送给你的朋友分享一下你的喜悦啦!什么?What?还不会打包?好吧,且往下看~

Step5:​打包成app

图7-打包成app

​在Build中选择第二个选项,暂时不管第一个选项,生成apk文件,然后将其发送给你的谁谁谁(想给谁就给谁吧!)接下来就是安装,运行,一个萌萌的喵星人app就这样诞生了!

Step6:添加震动效果(提升逼格的节奏)

​​进入块(Blocks)编辑器,单击Sound1打开抽屉;​

图8-Sound1抽屉中的程序块

选择call Sound1.Vibrate块,将其拖动到when Button1.Click 块内,置于call

Sound1.Play块下,恰好与原来的块吻合;如果不吻合,可尝试拖动它,使call

Sound1.Vibrate块顶部的凹陷恰好与call Sound1.Play块底部的凸起相对。

图9-单击事件引起震动

接下来在millisecs(毫秒)的缺口处插入一个数字块,如果想让手机振动半秒钟,则输入一个“500”的数字块。​​打开Math(数学)抽屉,其中的第一个块是“0”,这就是数字块,下图所示。

图10-Math抽屉

将第一个蓝色块拖入工作区,并将其中的0改为“500”,按回车键结束,并将其插入至millisecs之后

图11-程序块组图

测试下你的喵喵,看看伴随着声音是不是还有震动呀?

Step7:摇一摇(帅到没朋友的节奏)​

现在来添加最后一项,在Android设备上实现一个很酷的功能:摇晃设备时发出猫叫声。为此要用到AccelerometerSensor(加速度传感器)组件,它可以检测到设备的摇晃或移动。​

在设计器中,展开组件面板中的传感器(Sensors)分类,拖出一个AccelerometerSensor(加速度传感器)组件。不必介意把它放到哪里,像任何非可视化组件一样,无论你把它放在预览窗口的什么地方,它都会落到预览窗口底部的“​非可视组件”区域。

图12-添加加速传感器

摇晃设备的事件需要与单击按钮事件分开处理。这意味着需要一个新的事件处理程序。进入块编辑器,打开AccelerometerSensor1抽屉,拖出AccelerometerSensor1.Shaking块。

图13-添加加速传感器的振动事件

将Sound1.Play块插入AccelerometerSensor1.Shaking插槽,如下图所示(当加速传感器振动时,调用sound组件的播放声音功能,简单来讲就是当手机摇晃时,播放猫叫的声音),摇一摇你的手机,感受一下~

图14-当传感器振动的时候,播放猫叫的声音

HelloKitty应用中所有的应用块:

图15-HelloKitty中的所有应用块

上面的应用块显示了整个程序的逻辑:屏幕被按下和手机被摇晃是两个独立的动作,当两个事件发生的时候会引发一些动作(播放声音,震动);当按钮被按下时会同时调用两个动作(播放猫叫声和屏幕震动),当手机被摇晃时调用的是猫叫声。

至此,一个完整的HelloKitty就成型啦!呼呼~教程写到手酸,​今天的课就到这吧,下次继续!欢迎大家关注我的微信公众号“云端微课”可以定期观看视频教程,并获得相关资源。

appinventor飞机大战案例_第一个AppInventor 开发案例 Hello Kitty(下)相关推荐

  1. php网站开发案例教程ppt,php网站开发案例教程》课件.ppt

    php网站开发案例教程>课件.ppt 还剩 178页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧,价低环保! 内容要点: PHP ...

  2. java飞机大战绪论_一个超级完整的java飞机大战(包括音效和奖励)

    [实例简介] 比较完整的飞机大战,里面的解析很清楚,很适合用来当大作业或者学习之用 [实例截图] [核心代码] shootgame └── shoot game ├── 123.png ├── aix ...

  3. java飞机大战编程_[源码和文档分享]Java飞机大战游戏设计与实现

    1 概述 本次Java课程设计是做一个飞机大战的游戏,应用Swing编程,完成一个界面简洁流畅.游戏方式简单,玩起来易于上手的桌面游戏.该飞机大战项目运用的主要技术即是Swing编程中的一些窗口类库. ...

  4. java飞机大战护盾_全民飞机大战无敌护盾使用方法分享

    全民飞机大战中有很多无敌护盾,无敌护盾大家都知道,我敢说有的人不会用无敌护盾,这里肯定有人嘲笑我,谁不会用,那么简单,也就你不会吧,其实我以前是不会的,最近才学会怎么正确的使用无敌护盾,现在小编我给大 ...

  5. python飞机大战概要设计_飞机大战游戏开发文档(Android版)

    飞机大战游戏 开发文档 (Android版) 课程名称:飞机大战游戏 课程类型:Android游戏编程精彩内容,尽在百度攻略:https://gl.baidu.com 姓名:苏均灿 学号:131342 ...

  6. python飞机大战概要设计_飞机大战概要设计文档 4改

    飞机大战概要设计 文档规格说明书 1. 引言部分 1.1目的 该文档描述的是飞机大战的概要设计,主要内容包括飞机大战功能简介等. 本文档预期的读者包括全体小组成员及指导教师. 1.2 范围 1.2.1 ...

  7. python飞机大战概要设计_飞机大战详细设计文档 第三次修改

    飞机大战详细设计说明书 1. 引言部分 本部分主要说明项目背景和术语定义等. 1.1编写目的 本部分阐明编写详细设计说明书的目的,指明读者对象. 该文档的目的是描述设计飞机大战的每个模块的细节,包括模 ...

  8. java飞机大战流程图_飞机大战说明文档

    JIANGXI AGRICULTURAL UNIVERSITY精彩内容,尽在百度攻略:https://gl.baidu.com 科技月月评设计报告 精彩内容,尽在百度攻略:https://gl.bai ...

  9. python飞机大战概要设计_飞机大战大学课程设计初稿.doc

    毕业设计(论文) 题 目: 基于安卓平台的飞机大战游戏 学 院: 计算机科学学院 专业班级: 计算机科学与技术10级2班 指导教师: 黄国兵 职称:高级工程师 学生姓名: 赵兵 学 号: 410090 ...

最新文章

  1. Spring Boot 打包不同环境配置与 Shell 脚本部署
  2. docker启动elasticsearch失败--jvm内存不足解决方案
  3. Lesson 16.6Lesson 16.6 复现经典架构:LeNet5 复现经典架构 (2):AlexNet
  4. ASP.NET Core【在线教育系统】功能要求
  5. 分布式架构的负载均衡算法
  6. Day1 了解web前端
  7. 解决 MyEclipse 的耗内存卡死的办法
  8. iOS UIFont 字体名称大全,图解及使用方法
  9. Android基础学习一(整理,从零开始)
  10. odoo-OPENERP仓库各类知识详解
  11. html中引入字体包
  12. 传输栅输入端异常导通
  13. Torch not compiled with CUDA enabled 解决办法
  14. Java电商订单_Java电商项目学习(十) 订单管理模块开发
  15. 数学建模养老保险问题matlab,全国大学生数学建模竞赛C题 企业退休职工养老金制度的改革...
  16. Gherkin语法详解之Scenario outline(四)
  17. android 4.4 flac,如何在Android中将音频原始转换为FLAC
  18. C++数论之Legendre定理的运用:因子和阶乘
  19. 20条职场潜规则!小心那些城府很深的人(建议收藏)
  20. Understanding OpenStack Authentication: Keyston...

热门文章

  1. 全球及中国多晶硅产业竞争态势及发展前景研究报告2021-2027年
  2. win7如何在桌面上加计算机,详细教您win7如何添加显示桌面图标
  3. Lyft开源L5无人车数据集:55000个3D注释框架,还有空间语义地图
  4. 收费变免费,是商业模式的颠覆式创新
  5. Debian 安装 git
  6. linux图片浏览器设计目的,基于嵌入式Linu图片浏览器的设计与实现.doc
  7. 让职场人早下班的PDF转Word技巧,速戳!
  8. ddn专线(ddn专线接入)
  9. 面试时怎样做精彩的自我介绍
  10. 计算机网络自顶向下-复习