Android 抢购类倒计时实现,本文注重实现功能,代码里有注释,实现起来比较简单,所有不做过多解释。

先上图:


实现倒计时可采用Message + Handler 来实现,具体实现如下:

MainActivity的代码如下:

package com.example.android_countdown;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.app.Activity;import android.view.View;import android.widget.RelativeLayout;import android.widget.TextView;/** * 抢购倒计时 *  * @author shihao *  */public class MainActivity extends Activity {private RelativeLayout countDown;// 倒计时private TextView daysTv, hoursTv, minutesTv, secondsTv;private long mDay = 10;private long mHour = 10;private long mMin = 30;private long mSecond = 00;// 天 ,小时,分钟,秒private boolean isRun = true;private Handler timeHandler = new Handler() {@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);if (msg.what==1) {computeTime();daysTv.setText(mDay+"");hoursTv.setText(mHour+"");minutesTv.setText(mMin+"");secondsTv.setText(mSecond+"");if (mDay==0&&mHour==0&&mMin==0&&mSecond==0) {countDown.setVisibility(View.GONE);}}}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);countDown = (RelativeLayout) findViewById(R.id.countdown_layout);daysTv = (TextView) findViewById(R.id.days_tv);hoursTv = (TextView) findViewById(R.id.hours_tv);minutesTv = (TextView) findViewById(R.id.minutes_tv);secondsTv = (TextView) findViewById(R.id.seconds_tv);startRun();}/** * 开启倒计时  */private void startRun() {new Thread(new Runnable() {@Overridepublic void run() {// TODO Auto-generated method stubwhile (isRun) {try {Thread.sleep(1000); // sleep 1000msMessage message = Message.obtain();message.what = 1;timeHandler.sendMessage(message);} catch (Exception e) {e.printStackTrace();}}}}).start();}/** * 倒计时计算 */private void computeTime() {mSecond--;if (mSecond < 0) {mMin--;mSecond = 59;if (mMin < 0) {mMin = 59;mHour--;if (mHour < 0) {// 倒计时结束mHour = 23;mDay--;}}}}}

activity_main.xml代码如下:

                                                                                        

项目下载地址:http://download.csdn.net/detail/shr957250701/8172137

更多相关文章

  1. android GridView选择照片的完整实现
  2. Android中实现循环滚动
  3. Android图形库Skia(一)-基本测试生成PNG图片
  4. Android(安卓)px和dip及sp的区别及转换代码
  5. android从相册中选择报无法加载照片
  6. 通过浏览器直接打开Android应用程序
  7. Android(安卓)调用相册 拍照 实现系统控件缩放 切割图片
  8. Android(安卓)桌面组件
  9. 浅谈Java中Collections.sort对List排序的两种方法

随机推荐

  1. GridLayout 使用总结
  2. 用gradle 来打包Android
  3. 【Android】Android中 Paint 字体、粗细
  4. Android知识体系总结(全方面覆盖Android知
  5. A-GPS定位与GPS定位的Android简单实现
  6. android 学习笔记1
  7. Android编译环境
  8. 搭建Android java开发环境 eclipse
  9. 关于Android的prelink(Linux)
  10. TextView英文自动换行解决方法