// 验证码倒计时监听器60s
private class MyTimer extends CountDownTimer {
ViewGroup.LayoutParams lp;
public MyTimer() {
super(60000, 1000);
tv_login_getcode.setEnabled(false);
}
@Override
public void onFinish() {
Log.i(TAG, "onFinish Timer");
tv_login_getcode.setEnabled(true);
tv_login_getcode.setText("重新获取");
lp = tv_login_getcode.getLayoutParams();
lp.width = 160;
lp.height = 130;
tv_login_getcode.setLayoutParams(lp);
tv_login_getcode.setTextColor(getResources().getColor(R.color.colorAccent));
tv_login_getcode.setBackgroundResource(R.color.white);
}
@Override
public void onTick(long remainMillseconds) {
if (getActivity() != null) { // 此处加非空判断, 如果不加, 关闭此activity后还会继续进行, 然后崩掉
Log.i(TAG, "onTick Timer");
tv_login_getcode.setText((remainMillseconds / 1000) + " 秒");
if (tv_login_getcode.getText().equals("59")) {
// 改背景和字体和宽高
lp = tv_login_getcode.getLayoutParams();
lp.width = 138;
lp.height = 66;
tv_login_getcode.setLayoutParams(lp);
tv_login_getcode.setTextColor(getResources().getColor(R.color.white));
tv_login_getcode.setBackgroundResource(R.drawable.round_corner_btn_bg);
}
}
}
}
// 使用时 :
MyTimer timer = new MyTimer();
timer.start();