秒表是手机中的常用软件,其基本的功能有开始计时,暂停计时,重置以及保存记录。本文将通过axure实现上述功能,该实例还是比较简单的,其中最复杂的部分就是中继器的使用。
一、最终结果展示
体验地址:点击此处。
交互说明:
- 点击开始秒表即开始计时;
- 点击暂停的时候秒表计时暂停;
- 点击记录后记录当前的秒表数据;
- 点击重置恢复初始状态;
- 上方的当前时间随时获取当前时间。
二、制作方式
1. 绘制所需要的元件
本实例中没有对制作的结果进行美化,力求制作的简洁性。所以所有的元件都是直接绘制的,大致的绘制结果如下图所示:
绘制中间的时间面板以及上方的当前时间,此外用小圆圈代表4个按键,下方的中继器则是用来进行数据记录的,当然此处的中继器是0行,即不可见。这样一个简单的框架便得到了。
2. 全局变量的设计
如上图所示定义全局变量,其中h以及ha表示分钟的两个位数。m以及ma表示秒钟的两个位数,s以及sa表示毫秒的两个位数,l则是中继器中的行数。
除了行数初始值为1行之外,所有的全局变量初始值全部设置为0。
3. 计时面板的设置
计时面板的状态改变速度设置为1毫秒,然后状态改变后的操作如上所示进行设置,则可以完成最小一位sa的递增,同时将秒表的读书进行设置为[[h]][[ha]]:[[m]][[ma]]:[[s]][[sa]]。
当然如果仅是如此,将会出现除去sa会进行改变之外其它位数不会发生变化的情况,因此还需要设置其进一位的规则。
4. 进位面板的设置
进位面板的设置如上图所示,即通过条件判定的方式让数据进位。比如:当sa达到9的时候归于0且s加1,依次类推即可以得到最终结果。
5. 记录功能
当点击记录之后的设置如上所示,首先添加一行,其中c0等于全局变量l而c1为计时器的数据,之后再给全局变量加1即可以实现目的。
6. 暂停功能以及重置
重置功能包括暂停在内,暂停的实现原理很简单,即将动态面板的状态设置为state1,这样动态面板将不会继续实现循环,整个程序运行停止。
重置还需要将中继器中的数据全部清除,此外将所有的全局变量恢复初始值。这样就可以进行下一次的使用了。
至于当前时间的获取则是时间函数的直接使用,当前时间等于“当前时间:[[Now.getHours()]]:[[Now.getMinutes()]]:[[Now.getSeconds()]]”。
总结
该实例的难度相对比较低,主要是对中继器使用的练习以及条件判断的学习。axure虽然仅仅是原型工具,但是如果灵活使用,可以完成很多的事情,从小游戏的制作到各种效果的实现都可以完成。