您的位置:首页 > 其它

用CountDownTimer实现获取手机验证码效果

2015-08-06 22:02 225 查看
简述

CountDownTimer类用来实现倒计时效果。

构造方法接收两个参数,第一个设置倒计时长度,第二个设置倒计时间隔。

用此方法时只需复写onTick()和onFinish()这两个方法即可。

示例

package com.example.androidtest;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

//Data fields
private Button button;
private CountDownTimer downTimer;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=(Button)findViewById(R.id.button);
//Set the click listener for the button
button.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
downTimer.start();
}
});
//Create a count down timer of 60 seconds time and 1 second interval
downTimer=new CountDownTimer(60000,1000) {

//This method set the behavior of ticked
@Override
public void onTick(long millisUntilFinished) {
// TODO Auto-generated method stub
button.setBackgroundColor(Color.parseColor("#B6B6D8"));
button.setClickable(false);
button.setText(millisUntilFinished / 1000 + "秒后可重新发送");
}

//This method set the behavior of finished
@Override
public void onFinish() {
// TODO Auto-generated method stub
button.setText("重新获取验证码");
button.setClickable(true);
button.setBackgroundColor(Color.parseColor("#4EB84A"));
}
};
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: