安安诞生逻辑设计
对App进行行为编辑,需要点击开发网页右上角的“逻辑设计”按钮,切换到逻辑设计界面进行。
通过前面的案例展示可知,当点击按钮时会触发一系列行为,其流程如图2.12所示。
图2.12 安安出现流程图
所有在Screen1中加入的组件都显示在Screen1组件树列表下。当鼠标点击选中“按钮点我试试”组件时,会出现关联的事件处理模块、属性取值模块、属性设置模块和过程调用模块。为了响应按钮的点击事件,需要在对应的事件处理模块里面编写行为逻辑。所以先将“按钮点我试试.被点击”事件处理器拖入屏幕,如图2.13中所示。然后根据流程当找到其他相应模块拼接进“按钮_点我试试.被点击”事件处理模块中,最终结果如图2.14中所示。有一些模块,如文本和数字,需要根据实际需求填入具体值。
图2.13 拖放被点击事件处理器模块
图2.14 安安出现行为实现
有关图2.14中所用到模块具体说明见表2.7.
点击OK按钮后,想要通过摇晃手机还原到之前场景。流程图如图2.15,对应行为如表2.9,实际操作如图2.16。
图2.15 晃动手机行为流程图
图2.16 晃动手机行为实现
防止晃动事件误处理
当完成了手机晃动事件处理器的行为逻辑代码编写后,一旦检测到有手机晃动事件就会执行里面的代码模块,不仅是在安安诞生后的界面,在孵化基地的界面实际上也是一样会起作用的。这样在孵化基地界面时就会有点击按钮和摇晃手机两个事件同时发生,然后各自处理,将会引起混乱。所以可以进一步优化,在孵化基地界面不允许处理晃动事件,只有在安安诞生后的界面才允许处理晃动。为了实现这个目的,需要做以下三步修改:
1、在界面设计时,把“加速度传感器晃动手机”组件的“启用”属性改为不勾选,如图2.19。这样在孵化基地界面中“加速度传感器晃动手机”组件不会工作,当然也就不能响应和处理晃动事件了。
图2.19 “加速度传感器_晃动手机”组件的属性更新
2、在“按钮点我试试”组件的“被点击”事件处理器中设置“加速度传感器晃动手机”组件的“启用”属性为ture,这样“加速度传感器_晃动手机”组件就可以开始工作了。
3、在“加速度传感器晃动手机”的“被晃动”事件处理器中设置“加速度传感器晃动手机”组件的“启用”属性为false,这样当回到孵化基地界面时“加速度传感器_晃动手机”组件又不能工作了。修改后的代码如图2.20所示。
图2.20 冲突预防行为实现
(5)最后退出程序。Android手机设备一般都有一个回退键,如果需要关闭应用,可以通过响应回退键的回压事件来实现,在按压回退键事件处理器中直接调用内置块“控制”组件中的“退出程序”方法模块即可,实现代码如图2.21所示。
图2.20 按压回退键关闭应用
但是为了防止用户误操作,无意中触摸到回退键而关闭了应用,可以通过弹出选择对话框来询问用户是否真的要关闭应用。流程如图2.20,对应行为如表2.11,实际操作如图2.21。弹出框参数讲解如表1.12所示。条件判断if语句讲解如表1.13所示。
图2.20 关闭应用流程图