Android實(shí)現(xiàn)點(diǎn)擊獲取驗(yàn)證碼60秒后重新獲取功能
本文實(shí)例為大家分享了Android實(shí)現(xiàn)點(diǎn)擊獲取驗(yàn)證碼60秒后重新獲取的具體代碼,供大家參考,具體內(nèi)容如下
上代碼
/**
* Created by Xia_焱 on 2017/5/7.
*/
public class CountDownTimerUtils extends CountDownTimer {
private TextView mTextView;
/**
* @param millisInFuture The number of millis in the future from the call
* to {@link #start()} until the countdown is done and {@link #onFinish()}
* is called.
* @param countDownInterval The interval along the way to receive
* {@link #onTick(long)} callbacks.
*/
public CountDownTimerUtils(TextView textView, long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
this.mTextView = textView;
}
@Override
public void onTick(long millisUntilFinished) {
mTextView.setClickable(false); //設(shè)置不可點(diǎn)擊
mTextView.setText(millisUntilFinished / 1000 + "秒后可重新發(fā)送"); //設(shè)置倒計(jì)時時間
mTextView.setBackgroundResource(R.drawable.bg_identify_code_press); //設(shè)置按鈕為灰
SpannableString spannableString = new SpannableString(mTextView.getText().toString());
ForegroundColorSpan span = new ForegroundColorSpan(Color.RED);
spannableString.setSpan(span, 0, 2, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
mTextView.setText(spannableString);
}
@Override
public void onFinish() {
mTextView.setText("重新獲取驗(yàn)證碼");
mTextView.setClickable(true);//重新獲得點(diǎn)擊
mTextView.setBackgroundResource(R.drawable.bg_identify_code_normal);
}
}
TextView背景色
bg_identify_code_press
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#C0C0C0" /> <!--填充色 透明--> <corners android:radius="7dp" /> <!-- 圓角 --> </shape>
bg_identify_code_normal
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#2BAF2B" /> <!--填充色 透明--> <corners android:radius="7dp" /> <!-- 圓角 --> </shape>
布局代碼
<TextView
android:id="@+id/tv_yzm"
android:layout_width="match_parent"
android:layout_marginTop="50dp"
android:layout_height="45dp"
android:background="@drawable/bg_identify_code_normal"
android:gravity="center"
android:text="點(diǎn)擊獲取驗(yàn)證碼"
android:textColor="#FFF"
android:textSize="15dp" />
項(xiàng)目代碼
private void initView() {
tv_yzm = (TextView) findViewById(R.id.tv_yzm);
tv_yzm.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
CountDownTimerUtils mCountDownTimerUtils = new CountDownTimerUtils(tv_yzm, 60000, 1000);
mCountDownTimerUtils.start();
}
});
}
效果圖

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android實(shí)現(xiàn)滑塊拼圖驗(yàn)證碼功能
- Android本地驗(yàn)證碼的生成代碼
- Android自定義控件實(shí)現(xiàn)通用驗(yàn)證碼輸入框
- Android自定義View驗(yàn)證碼輸入框
- Android 使用fast-verification實(shí)現(xiàn)驗(yàn)證碼填寫功能的實(shí)例代碼
- Android實(shí)現(xiàn)自定義驗(yàn)證碼輸入框效果(實(shí)例代碼)
- Android自定義控件實(shí)現(xiàn)短信驗(yàn)證碼自動填充
- Android 自定義驗(yàn)證碼輸入框的實(shí)例代碼(支持粘貼連續(xù)性)
- Android短信驗(yàn)證碼自動填寫實(shí)現(xiàn)代碼
- Android 簡單的實(shí)現(xiàn)滑塊拼圖驗(yàn)證碼功能
相關(guān)文章
Android UI設(shè)計(jì)系列之自定義DrawView組件實(shí)現(xiàn)數(shù)字簽名效果(5)
這篇文章主要介紹了Android UI設(shè)計(jì)系列之自定義DrawView組件實(shí)現(xiàn)數(shù)字簽名效果,具有一定的實(shí)用性和參考價值,感興趣的小伙伴們可以參考一下2016-06-06
Android平臺生成二維碼并實(shí)現(xiàn)掃描 & 識別功能
這篇文章主要介紹了Android平臺生成二維碼并實(shí)現(xiàn)掃描 & 識別功能的相關(guān)資料,需要的朋友可以參考下2016-06-06
Android超實(shí)用的Toast提示框優(yōu)化分享
Toast是Android中用來顯示顯示信息的一種機(jī)制,和Dialog不一樣的是,Toast是沒有焦點(diǎn)的,而且Toast顯示的時間有限,過一定的時間就會自動消失。那么這篇文章跟大家分享下Android中Toast的優(yōu)化,對大家日常開發(fā)還是很實(shí)用,下面來一起看看吧。2016-09-09
Android利用屬性動畫實(shí)現(xiàn)優(yōu)酷菜單
這篇文章主要為大家詳細(xì)介紹了Android利用屬性動畫實(shí)現(xiàn)優(yōu)酷菜單,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-01-01
Android仿360市場下載按鈕的實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于利用Android實(shí)現(xiàn)360市場下載按鈕效果的方法,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),并在文末給出了源碼供大家下載,需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。2017-05-05

