阿里云服务器免费领卷啦。

捡代码论坛-最全的游戏源码下载技术网站!

 找回密码
 立 即 注 册

QQ登录

只需一步,快速开始

搜索
关于源码区的附件失效或欺骗帖, 处理办法
查看: 3150|回复: 3

一个简单的秒表的app软件,课程设计用的

[复制链接]

4209

主题

210

回帖

12万

积分

管理员

管理员

Rank: 9Rank: 9Rank: 9

积分
126356
QQ
发表于 2016-9-25 11:18:51 | 显示全部楼层 |阅读模式
一个简单的秒表的app软件,课程设计用的

  1. import android.app.Activity;
  2. import android.os.Bundle;
  3. import android.os.Handler;
  4. import android.os.Message;
  5. import android.view.View;
  6. import android.widget.Button;
  7. import android.widget.TextView;

  8. public class MainActivity extends Activity {//自定义Activity,继承安卓Activity类
  9.     private TextView minText;
  10.     private TextView secText;
  11.     private boolean paused = false;//一个是否停下来的标志
  12.     private String timeUsed;
  13.     private int timeUsedInSec;//猜测是记录的时间
  14.     private Handler uiHandler = new Handler() {//线程通讯工具类。用于传递消息,此处接收所有发送的消息

  15.                 @Override
  16.                 public void handleMessage(Message msg) {
  17.                         super.handleMessage(msg);
  18.                         switch (msg.what) {//判断发送过来的id标识
  19.                         case 1:
  20.                                 if (!paused)//判断是否停下来的标志,如果为false,则更新时间和用户界面
  21.                                 {
  22.                                         addTimeUsed();//增加时间
  23.                                         updateClockUI();
  24.                                 }
  25.                                 uiHandler.sendEmptyMessageDelayed(1, 1000);//延迟1000毫秒(也就是1秒)后发送消息,,
  26.                                 break;
  27.                         default:
  28.                                 break;
  29.                         }
  30.                 }
  31.           
  32.     };
  33.       
  34.     @Override
  35.     public void onCreate(Bundle savedInstanceState) {//进入此Activity时会先运行onCreate方法
  36.         super.onCreate(savedInstanceState);
  37.         setContentView(R.layout.main);//载入布局
  38.         
  39.                minText = (TextView) this.findViewById(R.id.min);//取得布局里的文本信息
  40.                 secText = (TextView) this.findViewById(R.id.sec);
  41.                
  42.                 Button button = (Button) this.findViewById(R.id.button);//取得布局里的按钮
  43.                 Button  sbutton=(Button)this.findViewById(R.id.stop);//取得布局里的结束按钮
  44.                 sbutton.setOnClickListener(new View.OnClickListener() {//设置结束按钮的点击事件
  45.                   
  46.                    @Override
  47.                    public void onClick(View v) {
  48.                         paused = true;//设置暂停标志为true
  49.                         timeUsedInSec=0;//设置记录的时间为0
  50.                    }
  51.                 });
  52.                 button.setOnClickListener(new View.OnClickListener() {
  53.                        
  54.                         @Override
  55.                         public void onClick(View v) {
  56.                            uiHandler.removeMessages(1);//移除id为1的消息
  57.                                 startGame();        //开始计时
  58.                                 paused = false;                //设置暂停标志为false
  59.                                 }

  60.                 });
  61.     }
  62.     @Override
  63.         protected void onPause() {//当前Activity退出的时候,执行
  64.                 super.onPause();
  65.                 paused = true;
  66.         }

  67.         @Override
  68.         protected void onResume() {//当是activity获得用户焦点,在与用户交互时执行
  69.                 super.onResume();
  70.                 paused = false;
  71.         }
  72.        
  73.         private void startGame() {
  74.                 uiHandler.sendEmptyMessageDelayed(1, 1000);//发送延迟处理的消息,延迟1000毫秒后发送消息,,也就是1秒
  75.         }
  76.        
  77.     // 更新时间的显示
  78.         private void updateClockUI() {//更新秒表的界面显示
  79.                 minText.setText(getMin()+":");//设置分钟
  80.                 secText.setText(getSec());//设置秒
  81.         }
  82.        
  83.         public void addTimeUsed() {
  84.                 timeUsedInSec=timeUsedInSec+1;//每次加1
  85.                 timeUsed = this.getMin() + ":" + this.getSec();
  86.         }
  87.        
  88.         public CharSequence getMin() {//取得分钟
  89.                 return String.valueOf(timeUsedInSec / 60);
  90.         }

  91.         public CharSequence getSec() {//取得秒
  92.                 int sec = timeUsedInSec % 60;
  93.                 return sec < 10 ? "0" + sec : String.valueOf(sec);//这些都是计算当前过了多少秒,并返回
  94.         }
  95. }
  96. //对了,这是一个简单的秒表的app软件,课程设计用的
复制代码



捡代码论坛-最全的游戏源码下载技术网站! - 论坛版权郑重声明:
1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与捡代码论坛-最全的游戏源码下载技术网站!享有帖子相关版权
3、捡代码论坛版权,详细了解请点击。
4、本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。
5、若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。 我们不承担任何技术及版权问题,且不对任何资源负法律责任。
6、如无法链接失效或侵犯版权,请给我们来信:jiandaima@foxmail.com

回复

使用道具 举报

0

主题

11

回帖

70

积分

注册会员

Rank: 2

积分
70
发表于 2020-6-14 17:28:04 | 显示全部楼层
登录可见评论
回复

使用道具 举报

0

主题

11

回帖

70

积分

注册会员

Rank: 2

积分
70
发表于 2020-6-14 17:28:30 | 显示全部楼层
登录可见评论
回复

使用道具 举报

0

主题

24

回帖

132

积分

注册会员

Rank: 2

积分
132
发表于 2020-7-9 08:17:37 | 显示全部楼层
登录可见评论
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立 即 注 册

本版积分规则

技术支持
在线咨询
QQ咨询
3351529868

QQ|手机版|小黑屋|捡代码论坛-专业源码分享下载 ( 陕ICP备15015195号-1|网站地图

GMT+8, 2024-6-20 03:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表