index
- 老巫婆的程序世界
- App Inventor趣味编程
- **第一章:**[**按钮的故事**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484859&idx=1&sn=5318ae0403e9a079f55a598f2d0040f8&chksm=e8012e64df76a7721deff76bf51aec763f145e2efcef625ac28e895bf41982d48fba3fca3404&scene=21#wechat_redirect)
- **第二章:**[**向日葵**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484862&idx=1&sn=1c5b795ebabdb5f62ca5dc07664fa662&chksm=e8012e61df76a777859b3adc0af23b0fffed5b573f0a415a9a2e0c45f315d8ff3c73084ee4a1&scene=21#wechat_redirect)
- **第三章:**[**听音练耳**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484865&idx=1&sn=d3b8cbc54953ccc7a2a27322358613df&chksm=e8012e1edf76a7081922e00dc4511c195aee65d2436e89e896e224920a053691665078c0856e&scene=21#wechat_redirect)
- **第四章:**[**调色板**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484868&idx=1&sn=156ce47a7c144513b9dc698f5e1cb242&chksm=e8012e1bdf76a70d7a1ad67fc8ccd29f04689254de19cc98060b3ccfd77d9cea7ed1ffb2b2b7&scene=21#wechat_redirect)
- **第五章:**[**涂鸦板**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484875&idx=1&sn=d629d37e6e8347ac84fee1c32a97993a&chksm=e8012e14df76a702c98b27b93f6203017bca80d484af1262aa052ec55215877c3609fce7c0a8&scene=21#wechat_redirect)
- **第六章:**[**梦幻时钟**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484887&idx=1&sn=5b8c50c066c1ffc082b8c2d9abe95cb8&chksm=e8012e08df76a71ef6f4f926517b77a7722f0486feb1f0b8b97f3540771004567c386defb8de&scene=21#wechat_redirect)
- **第七章:**[**弹球游戏**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484888&idx=1&sn=c209d0760e9539ba3006a971e2cc3a4c&chksm=e8012e07df76a7117938aa98aa9093ff095c47a901800781d919388f5cae44ba1ea67c5fe8a4&scene=21#wechat_redirect)
- **第八章:**[**数学系列**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484894&idx=1&sn=73e42726c0e2981cccce11e655b0ba05&chksm=e8012e01df76a717a4a0bf1e08f10662e4f83dca8805cb3ead43133c79f075b205dbe3e0ba03&scene=21#wechat_redirect)
- **第九章:**[**电子试卷之填空题**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484897&idx=1&sn=95abce90b0a564f65d185c7043d6a6c0&chksm=e8012e3edf76a728799950e84bad16ef9702742fb0001689c98eca27e419ab1bfb40791108b9&scene=21#wechat_redirect)
- **第十章:**[**随手记**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484898&idx=1&sn=8a2f18d8a2fc96ff013733bbc3242035&chksm=e8012e3ddf76a72b73b7b3f13e431bef45f0318d49119908e83e88ff0ba2949b5779025a5607&scene=21#wechat_redirect)
- **第十一章:**[**宝宝日记**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484907&idx=1&sn=07ae6293262a9795a5443bbe21161104&chksm=e8012e34df76a7223ee7c7f432fcd13cf2b095d4e6a89fc96142597fe907932bc8207648ddbb&scene=21#wechat_redirect)
- **第十二章:**[**加油2017**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484908&idx=1&sn=d8e736e1de2e8b69e8f833ef8c7c12f6&chksm=e8012e33df76a725a61c65051c0e394ff025d41572c0bdf8cd4b52b1a6039fb50e4a185c1761&scene=21#wechat_redirect)
- **第十三章:**[**注册与登录**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247484909&idx=1&sn=80ba2676e316e0bb93f837cc230f924c&chksm=e8012e32df76a72451a4230e937431785cb2cc0ca76d8cd514fb63fc7ec8edf863fa27bf3ca1&scene=21#wechat_redirect)
- **特辑:**[**指南针**](http://mp.weixin.qq.com/s?__biz=MzIyNTM5NDM1Mg==&mid=2247483705&idx=1&sn=a2e4b2686e14330248ea3dfee9a622c8&chksm=e8012ae6df76a3f0711b4f69ab85f5d4a64ae9afcc1808959e697c1ab9dbd4547a5e8c00ed58&scene=21#wechat_redirect)
- 云数据库与简易聊天室\[上\]
- 云数据库与简易聊天室\[下\]
- 高德地图API之猎鹰服务
老巫婆的程序世界
一、细说App Inventor系列课程
- 课程简介
- 认识App Inventor
- 设计视图
- 编程视图
- 开发测试
- 代码整理与调试:介绍App Inventor编程视图中的两个右键菜单。
- 组件:设置屏幕属性:在设计视图中设置屏幕组件(Screen1)的属性。
- 屏幕事件1:介绍App Inventor的屏幕事件:初始化事件、回退事件及出现错误事件。
- 屏幕事件2:介绍App Inventor的屏幕事件:授予权限和屏幕方向改变事件。
- 屏幕事件3:当屏幕方向发生改变时,屏幕尺寸的变化要晚于屏幕改变事件的发生时间,至多有1毫秒的延迟。纠错:视频中误将1毫秒说成1秒钟。
- 屏幕事件4:介绍App Inventor的多屏应用。
- 设置按钮属性:介绍按钮组件的属性设置。交互类组件和非交互类(图片、标签);对话框是不可见组件;png格式(扣掉空白,则空白位置是透明的)
- 按钮的事件:介绍按钮的事件,更多关于按钮的应用,请查看视频课程《按钮的故事》、《向日葵》、《听音练耳》等。
- 点击
- 长按
- 按压
- 释放
事件顺序:按压<长按<释放<点击
- 标签:介绍标签组件的属性设置,利用HTML标记展现文本格式的多样性。
-
启用html格式:
<b>粗体</b>
,<i>斜体</i>
,<u>下划线</u>
,<big>大号</big>
,<small>小号</small>
,<sup>上标</sup>
,示例:6x2
- 图片:介绍图片组件的属性设置及其简单的动画效果。
动画类型:ScrollRightSlow
,ScrollRight
,ScrollRightFast
,ScrollLeftSlow
,ScrollLeft
,ScrollLeftFast
,Stop
缩放方式:0: 没有缩放, 1:自动缩放图片
百分比:是相对于屏幕尺寸。
16. 复选框
17. 开关
18. 数字滑动条:介绍数字滑动条的使用方法,可参考《调色板》课程。
- 游戏中的血量,不启用滑块
-
文本输入框:
屏幕的主题与组件的外观有关系,按钮、滑动条焦点事件无用,但文本框的焦点事件有效
有两个以上文本输入框,失去焦点才有可能有效。
隐藏键盘:让另一个文本框获得焦点,并在获得焦点事件中让此文本框获得焦点,并隐藏键盘。 -
密码输入框:
显示密码:只能在编程视图中可用。 -
下拉框:知识点①数据类型 ②下拉框
代码设置选中项也会触发“选中”事件
索引是从1开始 -
列表显示框:知识点:①列表显示框 ②选择列表项
甲骨文的完整案例参见《开发实例》第12章
背景色:桔色;文字颜色:黑色;选中项:黄色 -
列表选择框:知识点:①列表选择框 ②准备选择事件 ③列表联动
-
日期选择框 属性设置及事件处理
-
时间选择框 属性设置及事件处理
-
对话框(1) 显示警告、显示进度、选择对话框
-
对话框(2) 输入对话框、消息对话框
-
Web浏览框(1) 访问互联网
-
Web浏览框(2) 与JavaScript的协作
-
布局组件 组件定位、替代多屏幕
-
图片选择框 属性设置及事件处理
-
音效播放器 属性设置及事件处理
-
音频播放器 属性设置及事件处理
-
视频播放器 属性设置及事件处理
-
照相机 摄像机 录音机 属性设置及事件处理
-
语音识别与语音合成 属性设置及事件处理
-
画布(1) 画布坐标系、画线及拖动事件
-
画布(2) 画弧、圆、点、多边形及触摸事件
-
画布(3) 写字、取单点色值、设单点色值
-
画布(4) 保存、划动事件、按下及释放事件 |
-
球精灵(1) 方向、速度、间隔、Z坐标、边界代码
-
球精灵(2) 拖动、划动、分开、按下及释放事件
-
精灵 属性与事件,组件类代码
-
计时器(1) 时长控制、运动控制
-
计时器(2) 时间点、当前时间、系统时间、时刻转换
-
计时器(3) 时长转换、时间增减、日期时间显示格式
-
加速度传感器 加速度分量、失重检测
-
方向传感器 属性设置、简易指南针、控制精灵运动
灵敏度:0,1,2,和加速度:a = sqrt(ax2+ay2+az2), 失重时和加速度会很小(小于1) -
位置传感器 数据来源、数据内容、位置改变事件
- 距离间隔:米 ;
- 时间间隔:毫秒;
- 提供者名称:gps,北斗,基站,WiFi,
-
陀螺仪传感器 手机坐标系、角速度分量
加速度传感器:平移;方向传感器:方向角度;陀螺仪:角速度 -
计步器 简单步数、行走步数
-
近场通信传感器 NFC、读写模式
NearFieldCommunication -
短信收发器 短信收发及选取联系人
-
信息分享器 分享信息与文件、文件路径写法
-
文件管理器 保存、读取及删除文件、追加文件内容
-
本地数据库 保存、读取及删除数据
-
网络数据库 保存、请求数据,完成存储、收到数据及网络通信失败事件
-
云数据库 实时数据更新
-
活动启动器 调取外部应用
-
数据类型概述 六种数据类型:数字、文本、逻辑、列表、颜色、组件对象
-
数字类型 随机数、进制转换、位运算、弧度角度转换
-
文本类型 文本的操作方法:增、删、改、查、合并及分解
-
逻辑类型 逻辑值、逻辑运算
-
列表_上 概念:列表项,列表项索引值,长度,空列表 操作:创建、增、删、改、查
-
列表_下 文本转列表、列表转文本、键值对列表
-
颜色类型 颜色合成、颜色分解
-
条件语句 流程图、条件语句
-
变量 全局变量、局部变量
-
过程 提高代码复用性、优化程序结构、提高程序可读性 、定义常量
-
数字循环 针对数字的循环语句:循环变量的初始值、终止值、增量(步长)及循环体
-
数字循环续 枚举法与鸡兔同笼、列表排序
-
列表循环_上 生成二维列表(学生成绩单)、成绩查询
-
列表循环_下 成绩单统计汇总、成绩单排序
-
条件循环 手工设置循环执行的条件
-
组件对象与类代码 组件对象、组建类代码、批量设置组建属性、处理组件类事件、加法出题机
-
字典类型_1 字典类型数据的构造 、字典的文本显示形式
-
字典类型_2 用程序构造字典数据、字典数据的新增、修改与删除
-
字典类型_3 是否包含某键、全部键、全部值、由键查值、由键路径查值、由键路径查当前节点中的全部值(值列表)、针对字典的循环语句
-
副本及关联列表 列表的副本、字典的副本及关联列表
-
.Web客户端_1知识点:①服务器与客户端 ②对比Web浏览框与Web客户端 ③阅读开发文档 ④请求数据 ⑤接收数据
参考读物:《App Inventor开发训练营》中『天气预报』及『加油2017』相关章节(天气预报可参考免费电子书book2.17coding.net)。 -
.Web客户端_2知识点:①URL的构成 ②GET与POST ③保存响应信息属性 ④收到文件事件 ⑤收到文本事件
-
Web客户端_3:解析JSON格式的文本数据
-
Web客户端_4:知识点:用POST方法实现高德地图猎鹰服务中服务的增删改查操作
-
地图_1:知识点:①经纬度 ②中心点 ③缩放等级 ④路网图与地形图
- 地图:画布,其它的是精灵;必须有地图组件
- 维度在前,经度在后
- 位置感知器:需要添加位置传感器
- 地图类型:1,2,3
- 地图_2_标记知识点:①用程序创建标记 ②设置标记属性
启用信息框:启用后“说明”和标题才起作用 - 地图_3_动态标记知识点:①GEOJSON ②动态创建特征点
- 地图_4_线
- 地图_5_多边形
- 地图_6_圆、矩形与导航
- 地图_7_特征点群:知识点:①特征点群 ②特征点间距离 ③标记到特征点的方位
beijing.geojson下载链接:http://my17coding.gitee.io/mapcomps/beijing.geojson
92.蓝牙服务器_客户端在蓝牙客户端与蓝牙服务器之间建立连接,并传输数据。
简易蓝牙聊天工具①:聊天服务器
简易蓝牙聊天工具②:聊天客户端
93:串口通讯
二、 答疑
三、 比赛
四、 资源:
- 免费电子书book2.17coding.net
- 2021版App Inventor已经开始上线测试,访问地址为ai2.17coding.net
App Inventor趣味编程
App Inventor趣味编程视频课程共计13章,16个案例(项目),现已完成全部索引任务。本文包含了各章课程链接,并简要列出了知识点,可链接到各章的索引页面;在索引页面中,有每节课的视频课程链接(此前发送的13期),可直接打开相关课程。建议订阅者收藏本文,以方便查找并跟随课程。
第一章:按钮的故事
- 组件:按钮、计时器
- 语法:全局变量、条件语句、事件机制
- 开发工具:开发三部曲——设计界面、编写代码、测试;可扩展块(条件语句)
第二章:向日葵
- 组件:水平与垂直布局、9个按钮、音效播放器、计时器
- 语法:全局变量、组件对象、列表、组件列表、条件语句、循环语句、随机数、设置任意按钮属性、过程、变量及过程的命名、按钮的按压与释放事件、屏幕初始化事件
- 开发工具:上传素材文件、折叠代码块、代码块排列、代码块排列方式——内嵌与外挂、
第三章:听音练耳
- 组件:水平与垂直布局、9个按钮、音效播放器、计时器
- 语法:随机数、拼接字串、全局变量、局部变量、条件语句的嵌套、循环语句
- 开发工具:项目另存、删除素材文件、素材文件命名、删除代码(右键菜单)、删除组件时注意代码移植
第四章:调色板
- 组件:布局、标签、数字滑动条、按钮
- 语法:颜色合成、数字滑动条属性设置、数字滑动条滑块位置改变事件、设置标签背景颜色、数字取整(就高取整、就低取整、四舍五入)、过程
- 开发工具:折叠全部代码块
第五章:涂鸦板
- 组件:布局、画布、标签、按钮、数字滑动条、计时器
- 语法:从计时器提取日期时间信息、画布画线、画点、画圆、写字、画布的点击、拖动、按下、释放事件、事件参数、清除画布、画布图片保存、全局变量、局部变量(有返回值)、带参数过程、组件对象、组件列表、循环语句
- 开发工具:画布坐标系
第六章:梦幻时钟
- 组件:画布、按钮、计时器
- 语法:全局变量、局部变量、循环语句、计时事件、有返回值过程、无返回值过程
- 编程规范:避免硬编码、用变量保存常量
第七章:弹球游戏
- 组件:布局、标签、画布、球精灵、精灵、计时器、方向传感器、按钮、数字滑动条、本地数据库、对话框
- 语法:随机数、精灵的运动与属性设置、画布划屏事件、方向传感器方向改变事件、精灵组件的碰撞检测、画布的边界代码、本地数据库的读写、选择对话框、对话框完成选择事件、计时事件、
- 编程规范:按照某种特定顺序书写代码
第八章:数学系列
- 组件:布局、标签、画布、文本输入框、按钮
- 语法:四则运算、三角函数、循环语句(数字)、过程、画布画线、条件循环语句、列表、添加列表项、有返回值过程
- 提醒:条件循环语句如果条件设置不当,有可能导致死循环
第九章:电子试卷之填空题
- 组件:多屏幕、布局、标签、文本输入框、按钮、对话框、列表显示框、
- 语法:打开屏幕、关闭屏幕、三元运算符(带返回值的条件语句)、列表、选择列表项、替换列表项、文本操作(求字符位置、文本替换、取子串、拼字串)、循环语句、条件语句、全局变量、局部变量、显示选择对话框、对话框完成选择事件
- 开发工具:屏幕命名在创建屏幕时完成、单步执行
第十章:随手记
- 组件:布局、日期选择框、标签、文本输入框、列表选择框、按钮、对话框、计时器、文件管理器
- 语法:文件管理器存取文本文件、文件路径、文件管理器收到文本事件、保存成功事件、字串分解(生成列表)、字串拼接、计时器当前时间、全局变量、局部变量、列表、替换列表项、删除列表项、循环语句、条件语句、过程、列表选择框完成选择事件
- 编程规范:用表格列出组件所有可能的状态,统一处理状态变化;用变量保存文件路径,以避免拼写错误。
- 开发工具:单步执行
第十一章:宝宝日记
- 组件:多屏幕、布局、文本输入框、密码输入框、标签、按钮、本地数据库、对话框、摄像机、视频播放器、计时器
- 语法:列表、添加列表项、组件对象、组件列表、任意组件、循环语句、全局变量、局部变量、过程、读写本地数据库、调用摄像机、播放视频
- 编程规范:数据绑定
- 开发工具:隐藏标题栏及状态栏
第十二章:加油2017
- 组件:布局、文本输入框、按钮、列表选择框、图片、对话框、计时器、Web客户端、位置传感器、
- 语法:有返回值过程、Web客户端组件为中文编码、发送请求、收到文本事件、解析JSON文本、键值对列表查询、动态设置组件的宽高、变量、循环、条件、过程、列表、拼字串
- 知识拓展:Web API、URL地址(参数名称及格式)、JSON格式数据、过程可以提高代码复用性、可读性,改进程序结构。
- 高德地图API:静态地图API、周边搜索API、地理编码API。
第十三章:注册与登录
- 组件:多屏幕、布局、标签、文本输入框、密码输入框、按钮、本地数据库、网络数据库、对话框
- 语法:读写本地数据库、读写网络数据库、数据库读写标记、网络数据库服务地址属性设置、网络数据库通信失败事件、列表、打开屏幕并传递值、关闭屏幕、文本输入框失去焦点事件、布局的显示与隐藏、循环、条件、变量、过程
- 编程规范:表单检验
特辑:指南针
- 组件:画布、精灵、方向传感器
- 语法:方向传感器方向改变事件、方向传感器方位角
- 开发工具:上传素材、项目编译安装