跳到教程内容
教程首页
App Inventor 2 教程 猫狗叫
准备开始
动手创造 · PROJECT LAB

猫狗叫

准备探索你的新作品
0%
项目难度每一步,都离作品更近

先了解你将做出什么

应用介绍

我们来做一个简单的猫狗投票应用:点击猫咪图片播放喵声并给猫加一票,点击狗狗图片播放汪声并给狗加一票。

连接你的应用

使用 AI2 Companion 连接手机,首次运行时确认声音文件可以播放。

猫狗叫教程

1. 添加并重命名问题标签

拖入一个标签,把它命名为 LabelQuestion。它会显示游戏问题。

添加问题标签

2. 设置问题标签

选中 LabelQuestion,勾选“粗体”,把字号设为 40,文本设为“你喜欢猫还是狗?”。

设置问题标签

3. 添加两个横向布局

在“布局”抽屉中添加两个 HorizontalArrangement,放在问题标签下方。上面的布局放猫狗按钮,下面的布局放投票统计。

添加横向布局

4. 添加两个按钮

在“用户界面”抽屉中添加两个按钮到 HorizontalArrangement1,分别命名为 ButtonCatButtonDog

添加按钮

5. 设置猫按钮

选中 ButtonCat,把图片属性设为 cat.jpg,并清空文本,让图片本身成为按钮。

设置猫按钮

6. 设置狗按钮

选中 ButtonDog,把图片属性设为 dog.jpg,并清空文本。

设置狗按钮

7. 设置统计区域宽度

选中 HorizontalArrangement2,把宽度设置为“充满父容器”,让下面的投票标签能够横向排列。

设置统计区域宽度

8. 添加四个统计标签

HorizontalArrangement2 中添加四个标签,重命名为 LabelCatLabelCatVotesLabelDogLabelDogVotes

添加四个标签

9. 设置 LabelCat

LabelCat 的宽度设置为“充满父容器”,文本设置为“猫的票数”。

设置猫标签

10. 设置其余统计标签

LabelCatVotes 的宽度设为“充满父容器”、文本设为 0;把 LabelDog 的文本设为“狗的票数”;把 LabelDogVotes 的宽度设为“充满父容器”、文本设为 0

设置其余标签

11. 添加两个 Player

从“媒体”抽屉拖入两个 Player,它们会出现在非可视组件区域。将它们重命名为 PlayerCatPlayerDog

添加播放器

12. 设置声音来源

PlayerCat.源文件 设为 cat.ogg,把 PlayerDog.源文件 设为 dog.ogg

设置播放器来源

13. 添加按钮点击事件

切换到积木编辑器,从 ButtonCat 抽屉拖出 当 ButtonCat.被点击时 事件。

打开 Blocks

猫按钮点击事件

14. 播放猫叫

PlayerCat 抽屉拖出 调用 PlayerCat.开始,放进 ButtonCat.被点击时 事件。

播放猫叫

15. 更新猫票数

LabelCatVotes 抽屉拖出 设 LabelCatVotes.文本 为,放进同一个点击事件。

设置猫票数

16. 添加加法块

从“数学”抽屉拖出 __ + __,接到 设 LabelCatVotes.文本 为 的输入槽。

添加加法块

17. 取得当前猫票数

LabelCatVotes 抽屉拖出 LabelCatVotes.文本,接到加法块的第一个输入槽。

取得猫票数

18. 加一票

从“数学”抽屉拖出数字 0,接到加法块第二个输入槽,并把它改为 1。点击猫按钮时,票数就会增加一。

加一票

19. 为狗按钮复制逻辑

ButtonDog.被点击时 重复同样逻辑:调用 PlayerDog.开始,把 LabelDogVotes.文本 设置为当前票数加 1。注意组件名必须全部换成 Dog 版本。

狗按钮逻辑

20. 测试和扩展应用

在手机上点击猫和狗按钮,确认声音播放且票数分别变化。接下来可以添加“重置投票”按钮、限制同一用户重复投票、改成其他主题,或用一个 Player 加变量切换声音来源。