android移动终端程序设计 计时器的实现.docx
- 文档编号:6726338
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:9
- 大小:197.97KB
android移动终端程序设计 计时器的实现.docx
《android移动终端程序设计 计时器的实现.docx》由会员分享,可在线阅读,更多相关《android移动终端程序设计 计时器的实现.docx(9页珍藏版)》请在冰豆网上搜索。
android移动终端程序设计计时器的实现
《移动终端程序设计》
任务设计报告
设计题目:
学生信息管理系统
专业:
网络工程
班级:
24071001
学号:
2407100105
姓名:
张国栋
目录
1.设计题目2
2.运行环境2
3.需求分析2
4.概要设计2
5.用户说明书4
6.源代码4
7.测试结果与分析14
8.收获、体会及意见19
1.设计题目
简单计时器
2.运行环境
Android2.2.3
3.需求分析
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于便携设备,现如今越来越多的人投入到android软件的开发当中,为了符合更多人的情趣爱好,各种绚丽的,美观的,大方的软件被设计出来,但有些时候不乏会有很多的人为了追求软件显示的完美而忽略它的实用性。
我做的这个简易计时器虽然布局简单不够绚丽,但它却有很大的实用性,它可以代替传统的计时器,而且易用方便,也进一步完善了我们手机的功能。
4.概要设计
本小型计时器最主要在实现start按钮,stop按钮,resert按钮以及lap按钮,开始时时间为0,运行start并置stop和lap为true,在多次测试时可利用lap按钮,它利用ListView将所有分组的数据显示到界面上,最后利用clear()函数清除所有数据。
5.用户说明书
此小型计时器简单易用,但是功能齐全。
按start按钮开始计时,按stopt停止计时,resert按钮会重置时间,每按一次lap它会以列表的形式显示出按lap之前经过的时间,对多人比赛计时非常适用
6.源代码及注释
由于此计时器代码过于冗杂,此处只摘录相对重要的代码:
packagecom.jackie.ticker;
publicclassTimer{
privatelongcurTimeInMills;
privatelonglastTimeInMills;
privateinthour;
privateintminute;
privateintsecond;
privateintdecSecond;//1/10second
privateintmillSecond;
privatelonglastLapend;
Timer(){
curTimeInMills=-1;
lastTimeInMills=-1;
decSecond=0;
setHour(0);
setMinute(0);
setSecond(0);
setDecSecond(0);
lastLapend=0;
}
publicint[]elapseTime(){
setTimeInMills();
elaspeTime();
int[]times=newint[4];
times[0]=hour;
times[1]=minute;
times[2]=second;
times[3]=decSecond;
returntimes;
}
publiclong[]lapTime(){
longcurTime=hour*3600*1000+minute*60*1000+second*1000+decSecond*100+millSecond;
longret=curTime-lastLapend;
lastLapend=curTime;
long[]lap=newlong[4];
lap[3]=ret%1000/100;
lap[0]=ret/1000/3600;
lap[1]=ret/1000%3600/60;
lap[2]=ret/1000%60;
returnlap;
}
publicvoidpause(){
this.curTimeInMills=-1;
}
publicvoidresume(){
this.curTimeInMills=System.currentTimeMillis();
}
publicvoidreset(){
pause();
init(0,0,0,0);
lastLapend=0;
}
@Override
publicStringtoString(){
//TODOAuto-generatedmethodstub
returnString.format("%02d:
%02d:
%02d.%d",hour,minute,second,decSecond);
}
publicvoidinit(inthour,intminute,intsecond,intdecSecond){
this.setHour(hour);
this.setMinute(minute);
this.setSecond(second);
this.setDecSecond(decSecond);
}
publicintgetHour(){
returnhour;
}
publicvoidsetHour(inthour){
this.hour=hour;
}
publicintgetMinute(){
returnminute;
}
publicvoidsetMinute(intminute){
this.minute=minute;
}
publicintgetSecond(){
returnsecond;
}
publicvoidsetSecond(intsecond){
this.second=second;
}
publicintgetDecSecond(){
returndecSecond;
}
publicvoidsetDecSecond(intdecSecond){
this.decSecond=decSecond;
}
privatevoidsetTimeInMills(){
if(this.curTimeInMills==-1){
this.curTimeInMills=System.currentTimeMillis();
}
this.lastTimeInMills=this.curTimeInMills;
this.curTimeInMills=System.currentTimeMillis();
}
privatevoidelaspeTime(){
longtick=this.curTimeInMills-this.lastTimeInMills;
millSecond+=tick;
if(millSecond<100)
return;
decSecond=decSecond+millSecond/100;
millSecond=millSecond%100;
if(decSecond<10)
return;
second=second+decSecond/10;
decSecond=decSecond%10;
if(second<60)
return;
minute=minute+second/60;
second=second%60;
if(minute<60)
return;
hour=hour+minute/60;
minute=minute%60;
}
publicstaticvoidmain(String[]args){
Timert=newTimer();
try{
System.in.read();
while(true){
t.elapseTime();
System.out.println(t.toString());
Thread.sleep(10);
}
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
7.测试结果与分析
1.初始界面如图所示
2.当按start按钮时他会开始运行,同时按钮显示为stop,lap按钮也可以实现它的作用,如图所示:
3.当按lap按钮时,他会以ListView的形式显示出每一次记录的时间,如图所示:
4.当按resert按钮时它会重置时间,同时start按钮可以运行,如图所示:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- android移动终端程序设计 计时器的实现 android 移动 终端 程序设计 计时器 实现