收藏本站
 
设为主页
     您的位置:首页在线课堂高二级2017-2018学年度第一学期 》第八课
==※ 高二级 ※==
2017-2018学年第一学期






==※ 相关资源 ※==
 
太平洋电脑网
天极网
eNet网络学院
 
==※ 自由论坛  ※==
   
用户名:
密码:
 
忘记密码
游客请进
 
第八课 实例制作“凤凰树下”
 
学习目的:根据任务要求自行完成APP开发。
学习重难点多屏幕之间的逻辑设计。
教学方式:老师讲授、提问;学生理解,练习。

学习内容:

一、App Inventor作业要求
  主题:自定
  提交:① aia源文件(导出)
     ② apk安装文件(打包)
     ③ 功能说明文档(Word文件)
     ④ 主要屏幕截图
  要求:①要有自己实现的功能,不能完全是课堂的例子。
     ② 可以单独完成,也可以两个同学合作。
  怎样确定APP的主题:
  1、在平时练习过的例子里加入新的想法与创意。例如:
   ①参考“你好喵喵”创作一个弹钢琴或乐器演奏的例子。
   ②完善“进击的地鼠”,设置关卡和难度。
   ③参考“信手涂鸦”创作一个更完善的画图程序。
   ④改进“拼图游戏”,让图片随机摆放,或者更换游戏玩法等。
  2、日常生活的使用需求。例如:背诗app,吾日三省吾身app,任务随机分工app,……。
  3、小游戏。
  4、你的新点子。

二、凤凰树下
  1.创意来源   

  每年春夏之间,凤凰树都会开花,校园里的凤凰花开,也是高考之时。
  关于高考有很多励志的短语,我们可以收集一些励志短语,将他做成APP,随机的呈现出来。
莞中为我增荣耀,我为莞中添光彩! --东莞中学
有志者事竟成也!——刘秀
君子志于择天下。——刘炎
古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。 ——苏轼
一个有坚强心志的人,财产可以被人掠夺,勇气却不会被人剥夺的。—— 雨果
一知半解的人,多不谦虚;见多识广有本领的人,一定谦虚。——谢觉哉
路漫漫其修远兮,吾将上下而求索。 —— 屈原
在劳力上劳心,是一切发明之母。事事在劳力上劳心,便可得事物之真理。—— 陶行知
真正的才智是刚毅的志向。 —— 拿破仑
  2. 素材:
点击下载素材

  3. 程序功能:

  • 程序分为两个屏幕:第一个屏幕(Screen1)负责显示格言,第二个屏幕(Setting)负责管理格言
  • 点击屏幕Screen1的"更换格言"按钮会随机更换格言,点击设置按钮会进入Setting屏幕
  • 在Setting屏幕中可以增加或删除格言,对格言的操作在关闭App后仍有效,即下次启动App后看到的格言会跟着变化
  • 点击Setting屏幕的“关闭”按钮会返回到屏幕Screen1,这时如果我们点击“更换格言”按钮会根据新的格言列表中随机显示一项,如果格言全部被删除(即空列表),则显示的格言为空。
Screen1屏幕 Setting屏幕

二、组件设计

  1.Screen1屏幕
  Screen1屏幕主要实现格言的显示,它用到的组件列表如下图所示:
  各组件的功能及属性设置如下表所示:
组件名称 组件类型 功能 属性
Screen1 屏幕   标题设为“凤凰树下”
水平布局1 水平布局 使得设置按钮靠右显示 宽度设为充满
水平对齐设为居右
设置按钮 按钮 用于打开Setting屏幕 宽度和高度都设为32像素
文本设为空
图像设为icon_setting.png
图像1 图像 用于显示图片 宽度设为充满,高度设为50%
格言标签 标签 用于显示格言 宽度设为充满
字号设为20
水平布局2 水平布局 使得更换格言按钮居中显示 宽度设为充满
水平对齐设为居中
更换格言按钮 按钮 点击随机更换显示另外一条格言 形状设为圆角
文本设为“更换格言”
微数据库1 微数据库 用于获取之前保存的格言列表  
 
  2.Setting屏幕
  Setting屏幕主要实现格言的添加、删除,并且实现格言的持久保存。屏幕所用到的组件列表如下图所示:
  各组件的功能及属性设置如下表所示:
组件名称 组件类型 功能 属性
Setting 屏幕   标题设为“格言管理”
水平布局1 水平布局 用于排列输入框和添加按钮 宽度设为充满
垂直对齐设为居中
格言输入框 文本输入框 用于输入要添加的格言 提示设为“请输入要添加的格言”
宽度设为充满
添加按钮 按钮 用于实现将输入的文字添加到格言列表中。 文本设为“添加”
列表显示框1 列表显示框 用于显示格言列表 宽度和高度都设为充满
水平布局2 水平布局 使得删除和关闭按钮居中显示 宽度设为充满
水平对齐设为居中
删除按钮 按钮 删除选中的列表项 文本设为“删除”
关闭按钮 按钮 关闭当前屏幕(返回) 文本设为“关闭”
微数据库1 微数据库 用于读取和保存格言列表  
对话框1 对话框 用于显示信息 显示时长设为短时延
 
三、逻辑设计
1、使用列表记录所有可用的格言
  可以将多项内容保存在一个列表中,这样可以避免定义太多的变量,也方便将相关联的内容保存在一起。列表中的项可以是文本、数字、逻辑值、或者也是一个列表,同一个列表中的项可以是相同类型的数据也可以是不相同类型的数据。
  内置块中的“列表”分类包含所有关于列表的操作模块。例如:可以通过“创建列表”来完成列表的创建。

  当我们需要使用保存在列表中的某一项内容时,可以通过来获取,其中的索引值就是指列表项的编号,列表项的编号从 1 开始。所提供的索引值必须在1和列表的长度之间,如果列表长度为0则表示列表为空,列表项的编号(即索引值)不能小于1。
  通过可以实现从列表中的项目进行随机选取。请注意:当列表为空时,随机选取列表项会出错,所以我们使用随机选取列表项时一般要判断列表是否为空(除非你可以确定一定不为空)。
  关于列表的操作有很多,本例还用到了以下一些操作:



 
2、使用微数据库持久保存格言列表
  我们使用变量保存的数据,在App关闭后就消失了,如果想要保存的数据在程序下次打开时仍然有效,则需要使用微数据库组件进行保存。一般来说,程序运行时会在适当的时候通过微数据库的模块将需要持久保存的数据保存下来。而在“屏幕初始化”时会利用读取之前保存的值。
  使用微数据库可以保存很多不同的数据,不同的数据是通过标签来进行区分的,这里的标签就好比变量名,用来区分不同的数据。对于“获取数值”模块来说,特别要注意它有个“无标签时返回值”,在App第一次运行时,微数据库中并没有保存过任何内容,这时去读取格言列表肯定无效,因此会返回“无标签时返回值”,合理设置该值具有重要意义。
  微数据库组件保存的数据对于每一个App都是私有的,也就是说一个App保存在微数据库中的数据不会被另外一个App访问。另外,保存在微数据库中的数据是通过标签进行区分的,只要标签名相同,则读写的都是相同的数据,而不管你是在哪个屏幕进行读写!所以我们可以实现在Setting屏幕用“格言列表”这个标签名保存我们的所有格言,而在Screen1屏幕初始化是用同样的标签名读取读取所有格言列表。
  我们这个APP需要保存的数据就是所有格言的列表,整个格言列表可以作为一项数据保存到微数据库中,因此我们使用标签名“格言列表”进行数据的保存,保存和读取的方式如下图所示:





  列表保存在微数据中,读取出来还是一个列表。我们看到上面两个“获取数值”的模块其无标签时返回值是不同的,一个是返回数值0,另一个是返回空列表,其中返回0的模块是用于区分是否第一次运行APP,因为这可以区别于我们将所有格言删除后将一个空列表保存到微数据库中的情况,我们可以根据这个数值设置初始列表。
 
3、Screen1屏幕的逻辑设计
Screen1屏幕逻辑设计
 
4、Setting屏幕的逻辑设计
Setting屏幕逻辑设计
 

四、拓展
  参考“凤凰树下”,制作一个“古诗词学习助手”,可以把这个功能加入到“凤凰树下”(基本的制作方法一样,素材和美工变化一下就可以了。)
  也可以参考这个app,构思自己的app,比如做一个英文短语的学习app,或者数学公式、或者化学反应式、或者物理公式、或者冷笑话等等,思考一下怎样做的界面更友好,功能更人性化。


五、问与答
  Q:如果希望在学校以外的地方,也能使用App Inventor平台,怎么办呢?  
  A:可以使用广州教科网平台:http://app.gzjkw.net
  网上也有参考资料可供同学们参考:http://ai2.17coding.net

  Q:能不能将我做过的练习,从一个平台转移到另一个平台?
  A:可以的哦!“项目”菜单里,选择“导出项目”,就可以将当前项目导出为一个aia文件保存到本地。
  在新的平台,选择“项目”>“导入项目”即可。
  Q:如何使用模拟器调试程序?
  A:查看这里
  Q:如何使用安卓手机而不是模拟器调试程序?
  A:查看这里
  Q:如何将我调试好的程序安装到自己的安卓手机里?
  A:查看这里

* 友情提示:本文档只供本校师生上课时辅助使用,不是正规的教学设计或教案。


 

 

Copyright © 2001-2011 东莞中学信息技术科 All Rights Reserved
IE4.0 or later / 800*600  For The Best View