Android简单计时器的实现


<span style="font-family: Arial, Helvetica, sans-serif;"></span><span style="font-family: Arial, Helvetica, sans-serif; font-size: 14px;">今天在做一个获取短信验证码的功能时,要求用户点击了一次获取验证码后要在控件上显示一个时间,即在这个时间内不能再去点击该控件(就是使其在这个时间内失焦)。于是乎上网看了下别人的实现,各种自定义控件看得我眼花缭乱,一个小小的功能难道要搞得那么复杂(我还没具体研究网上的具体功能)?我仔细研究发现在android.os包下有个抽象类CountDownTimer,这就是为我们计时而产生的吧?先上效果图,然后再上代码。</span>

计时开始前


开始计时


计时结束

看了简单效果,我们来看下代码更简单:

首先布局文件就不说了,眯着眼睛都能看出这是一button。

接着就是activity文件了,简单如下:

public class MainActivity extends Activity {

    private Button testTime;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

testTime = (Button) findViewById(R.id.btn_main_time);
testTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//time.start();
new CountDownTimer(60000,1000){

@Override
public void onTick(long l) {
testTime.setClickable(false);
testTime.setText(l / 1000 + "秒后重新发送");
testTime.setBackgroundColor(Color.RED);
}

@Override
public void onFinish() {
testTime.setClickable(true);
testTime.setText("重新发送");
}
}.start();
}
});
}
}


确实有点简单,写下来主要是备忘的,如果有更好的方法欢迎大家推荐!

最后吐槽下,csdn的编辑框用户体验感真不好,博客园的好多了!

智能推荐

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



猜您在找
简单实现Android计时器 Android简单计时器 Android简单计时器 Android 验证码计时器 简单实现 Android 利用SurfaceView实现一个简单的计时器
智能推荐
 
© 2014-2019 ITdaan.com 粤ICP备14056181号  

赞助商广告