Android自定義控件實(shí)現(xiàn)短信驗(yàn)證碼自動填充
VerifyCodeView
VerifyCodeView是一個用于輸入驗(yàn)證碼的Android自定義控件,它支持?jǐn)?shù)字類型的驗(yàn)證碼,支持自定義外觀,并且支持短信驗(yàn)證碼自動填充。
項(xiàng)目地址:VerifyCodeView
在項(xiàng)目中引入VerifyCodeView
Gradle
dependencies { compile 'com.github.gongw:verifycodeview:1.0.2' }
Maven
<dependency> <groupId>com.github.gongw</groupId> <artifactId>verifycodeview</artifactId> <version>1.0.2</version> <type>pom</type> </dependency>
支持的自定義屬性
- vcTextCount - 驗(yàn)證碼長度
- vcTextColor - 驗(yàn)證碼字體顏色
- vcTextSize - 驗(yàn)證碼字體大小,單位sp
- vcTextFont - 驗(yàn)證碼字體樣式文件路徑(assets中的路徑)
- vcDividerWidth - 每個驗(yàn)證碼之間的間隔距離,單位dp
- vcWrapper - 包裹驗(yàn)證碼的外觀樣式
- vcWrapperStrokeWidth - 包裹驗(yàn)證碼的外觀的線條寬度,單位dp
- vcWrapperColor - 包裹驗(yàn)證碼的外觀顏色
- vcNextWrapperColor - 包裹將要被填充的驗(yàn)證碼的外觀顏色
使用示例
xml
<com.github.gongw.VerifyCodeView android:layout_width="240dp" android:layout_height="50dp" android:layout_marginTop="42dp" app:vcTextColor="#b63b21" app:vcTextCount="4" app:vcTextSize="36sp" app:vcDividerWidth="8dp" app:vcWrapper="centerLine" app:vcWrapperColor="#313335" app:vcNextWrapperColor="#b63b21" app:vcWrapperStrokeWidth="2dp" />
java
verifycodeView.setOnAllFilledListener(new VerifyCodeView.OnAllFilledListener() { @Override public void onAllFilled(String text) { Toast.makeText(MainActivity.this, "filled by "+text, Toast.LENGTH_SHORT).show(); } });
自定義外觀
verifycodeView.setVcWrapper(new VerifyCodeWrapper() { @Override public boolean isCovered() { //whether the wrapper and verify code display together return false; } @Override public void drawWrapper(Canvas canvas, Paint paint, RectF rectF, RectF textRectF) { //draw your own wrapper canvas.drawLine(textRectF.left - textRectF.width()/2, rectF.height()/2, textRectF.right + textRectF.width() / 2, rectF.height()/2, paint); } });
短信驗(yàn)證碼自動填充
SmsVerifyCodeFilter filter = new SmsVerifyCodeFilter(); filter.setSmsSenderStart("1096"); filter.setSmsSenderContains("5225"); filter.setSmsBodyStart("驗(yàn)證短信:"); filter.setSmsBodyContains("驗(yàn)證碼"); filter.setVerifyCodeCount(verifyCodeView.getVcTextCount()); verifyCodeView.startListen(filter);
以上就是本文的全部內(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 自定義驗(yàn)證碼輸入框的實(shí)例代碼(支持粘貼連續(xù)性)
- Android實(shí)現(xiàn)點(diǎn)擊獲取驗(yàn)證碼60秒后重新獲取功能
- Android短信驗(yàn)證碼自動填寫實(shí)現(xiàn)代碼
- Android 簡單的實(shí)現(xiàn)滑塊拼圖驗(yàn)證碼功能
相關(guān)文章
Android實(shí)現(xiàn)自定義帶文字和圖片Button的方法
這篇文章主要介紹了Android實(shí)現(xiàn)自定義帶文字和圖片Button的方法,涉及Android針對Button按鈕的布局與設(shè)計(jì)技巧,需要的朋友可以參考下2015-05-05Android系統(tǒng)開發(fā)中l(wèi)og的使用方法及簡單的原理
LOG是廣泛使用的用來記錄程序執(zhí)行過程的機(jī)制,它既可以用于程序調(diào)試,也可以用于產(chǎn)品運(yùn)營中的事件記錄;在平時開發(fā)過程中經(jīng)常需要與log打交道,所以很有必要了解log的使用方法及簡單的原理,感興趣的朋友可以了解下啊2013-01-01Android中使用socket通信實(shí)現(xiàn)消息推送的方法詳解
這篇文章主要介紹了Android中使用socket通信實(shí)現(xiàn)消息推送的方法,文中舉了一個消息發(fā)送端和一個消息接收端以及服務(wù)器端的例子來說明原理并且展示了客戶端的實(shí)現(xiàn),需要的朋友可以參考下2016-04-04MPAndroidChart繪制自定義運(yùn)動數(shù)據(jù)圖表示例詳解
這篇文章主要為大家介紹了MPAndroidChart繪制自定義運(yùn)動數(shù)據(jù)圖表示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09詳解Android 7.0 Settings 加載選項(xiàng)
本篇文章主要介紹了Android 7.0 Settings 加載選項(xiàng),Android 7.0 Settings頂部多了一個建議選項(xiàng),多了個側(cè)邊欄,操作更加便捷了,有興趣的可以了解一下。2017-02-02Android RecyclerView詳解及簡單實(shí)例
這篇文章主要介紹了Android RecyclerView詳解及簡單實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-01-01Android啟動頁設(shè)置及動態(tài)權(quán)限跳轉(zhuǎn)問題解決
在我遇到這個實(shí)際問題之前,我一直認(rèn)為啟動頁的作用是美化產(chǎn)品,提升軟件逼格。但實(shí)際上,它更重要的是起到了一個攔截器的作用,這篇文章主要介紹了Android啟動頁設(shè)置以及動態(tài)權(quán)限跳轉(zhuǎn),需要的朋友可以參考下2022-04-04