回归
Scratch语言虽然简单却能做出丰富的应用,下面我们来做一本电子相册,可以前后翻页,翻页的过程中有特效。
首先我们需要用到“特效”方面的代码,从“可以前后翻页”这个需求可知还要与用户交互。(还可以添加隔一段时间自动后翻的功能)。
程序角色共两类:一是两个按键,左箭头和右箭头(如果用键盘的左右键控制,不设置也行)。
圖2 右箭头代码
二是相册照片,数量最好是3张以上。
还要设置一个变量:张数。
1. 翻页箭头代码分析
当绿旗被点击时,显示第一张照片,当右箭头或→键被点击时,先判断目前是第几张,然后把“张数”变量设置为下一张的张数,并广播。下一张图片收到广播后会用特效形式显示。当张数是最后一张时说“已经是最后一张了”。(如图2)
左箭头的代码与右箭头的代码相似,复制代码并稍微改编,点击时张数变为上一张即可。
特别要注意“如果…那么”语句的顺序,以免出现Bug。
2. 照片代码分析
1) 每张照片单独作为角色,对其单独编程。
2) 对于第一张图片,当绿旗被点击,广播“第一张”。
3) 当接收到“第一张”时,执行显示特效。特效通过重复体现出渐变效果。具体循环次数和等待时间要根据具体效果调整。
4) 点击翻页键进行广播“第二张”,当接收到“第二张”时将执行虚像特效逐渐隐藏。
5) 第二张图收到“第一张”和“第三张”时要执行虚像特效。收到“第二张”时执行显示特效。(如图3)
图3 可以选择的特效
6) 除了几种内置特效外,还可以用图片运动切入的方式自制特效。(如图4)
图4 图片运动也是特效
3. 小结
实现电子相册功能还可以有不同的解决方法,比如引入随机变量丰富变化效果。