App Inventor2程序开发课程(8)

MakeCourse

ZMAKER

Hello,大家好,我是歌瑶。

上一节,我们已经编写完成了触摸小球的坐标数据测试过程。虽然能够检测出坐标数据,但是并没有调用蓝牙客户端发送数据,并且上一节的程序有着一些相似的重复命令。

此时我们就可以引入变量,从“变量”的抽屉盒子里拖拽出,并进行重命名。如图所示:

然后,把

定义为x原点的变量,同理定义y原点的变量。如图所示。然后把所有能够替换的都给替换掉。这样我们就使程序更加简化而显得优雅了许多。

但是还有一块比较臃肿的“命令堆”,如下图:

如果仔细观察,我们发现这里边除了4个变量不同,其他都是一样的。既然这样,就可以定义一个子程序或者子函数,来存放这些相同的命令块,而不同的可以用变量定义。

所以,我们引入一个定义子程序或者子函数的过程。从“过程”的抽屉盒子里拖拽出“过程”定义命令,并且重命名。如图所示:

还记得我们要封装的“命令堆”里边有4个量是不同的吗?那我们就给这个“过程”添加4个空变量用来存放。添加方式就是点击,会弹出图71所示的窗口。把左侧命令块拉进右侧卡扣内并进行重命名。

如果再仔细一些,会发现即使抠出来的这4个变量中也是有重复的,其实就只有2个变量不同。于是,我们的子程序携带两个空变量就好了。

定义好一个包含有4个空变量的子程序之后,我们把重复的命令堆放进这个子程序里边,把那4个别人家的数据量都换成自己的空变量,并且把之前定义的两个全局变量也包含进这个子程序里边,如图所示。

这样一来,我们的那个臃肿的程序就可以改成这样了。

到此,完整的程序如图所示:

我们此时就可以“下载编译并显示二维码”进行安装测试,以得到要发送的坐标数据的具体值。

知道是什么数据之后,心里就踏实了,就可以调用“蓝牙客户端”进行数据的传输了。而添加调用“蓝牙客户端”的命令也只需要放在我们定义的子程序里边就可以了。就像这样:

到此,我们的手机端的App设计开发就算完成了,也就是说这个App已经能够发送连续的蓝牙数据。接下来就需要再写一个Arduino程序以来接收蓝牙数据并响应执行。(这里不再详细讲解Arduino程序。)

↓ 更多精彩作品 ↓

Processing系列教程

CAD轻量化教程

Arduino开发入门教程

Scratch图形化编程教程

App Inventor程序开发课程

《玩儿转Micro: bit》系列

Magicavoxel像素体3D建模

Linux基础入门课程

Python入门&人工智能

人工智能先修课程

开放 融合 创造

未完待续

欢迎好奇宝宝们来玩儿!个人参观可直接空降~

团体参观请联系后台,或根据下方联系方式提前预约~

交通路线:乘坐地铁1号线梧桐街站A出口)

河南省国家大学科技园南配1号楼东1-2层

欢迎关注我们的新浪微博@郑州创客空间

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180322B0YZ8E00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券