github:https://github.com/longer96/VerifyCode
Dependency
Gradle
dependencies { implementation'com.longer:verifycode:1.0.3'}
Introduction
自带了方框、下划线、圆圈输入框的样式
支持自定义验证框长度、字体大小、颜色、验证框宽高度、间距
支持选中与非选中边框颜色、内容背景颜色
支持自定义选中或非选中背景
支持输入类型的设置(是否为数字)
支持是否将验证码已密码的方式显示
支持银行卡\信用卡 卡号的验证以及卡种,归属银行的查询
输入键盘的隐藏
ScreenCapture
密码输入 app:isShowPwd
可以通过自定义背景,实现很多样式
app:bgFocus="@drawable/bg_line_center_normal" 中划线 bg_line_center_normal.xml
app:bgFocus="@drawable/bg_blue_radiu5_solid" 圆角矩形 bg_blue_radiu5_solid.xml
文字输入,字体颜色修改
Function instruction
attributefunction nameinstruction
codeLengthsetCodeLength(5)验证码长度 默认5
codeTextSizesetCodeTextSize(29)验证码字体大小 8
codeTextColorsetCodeTextColor(Color.RED)验证码字体颜色
tvWidthsetTvWidth(40)验证码框的宽度
tvHeightsetTvHeight(40)验证码框的高度
codeMarginsetCodeMargin(10)验证码框间距
bgNormalsetBgNormal(R.drawable.bg_line_normal)验证码默认背景(使用用户自定义drawable,将无法使用只带方法修改边框颜色)
bgFocussetBgFocus(R.drawable.bg_line_focus)验证码焦点背景(同上)
codeStylesetCodeStyle(1001)输入框样式 1000:方框(默认) 1001:圆圈 1002:下划线
normalStrokeColorsetNormalStrokeColor(Color.RED)正常时边框颜色
normalContentColorsetNormalContentColor(Color.RED)正常时内容背景颜色
focusStrokeColorsetFocusStrokeColor(Color.BLUE)焦点时边框颜色
focusContentColorsetFocusContentColor(Color.BLUE)焦点时内容背景颜色
isBoldsetBold(true)是否加粗 true false
strokeSizesetStrokeSize(2)边框的宽度
isNumbersetNumber(false)是否输入类型为数字 true(默认) false
isShowPwdsetShowPwd(true)是否隐藏输入为密码符号 true false(默认)
Example
xml 简单使用
xml 详细
验证码java
PhoneCodephonecode=findViewById(R.id.phonecode);//隐藏键盘phonecode.hideKeyboard();//设置内容phonecode.setText("123");//清除背景样式phonecode.setBgNormal(null);phonecode.setBgFocus(null);//设置监听phonecode.setOnVCodeCompleteListener(newPhoneCode.OnVCodeInputListener() {@OverridepublicvoidvCodeComplete(StringverificationCode) { vcode=verificationCode;Toast.makeText(MainActivity.this,"验证码:"+verificationCode,Toast.LENGTH_SHORT).show(); }@OverridepublicvoidvCodeIncomplete(StringverificationCode) { }});
银行卡号验证java
BankInfoBeanbankinfobean=newBankInfoBean(cardnum);//或者BankInfoBeanbankinfobean=newBankInfoBean();bankinfobean.setTotalBankcode(cardnum);//验证银行卡是否有效bankinfobean.checkBankCard(cardnum);if(checkBankCard(cardnum)) {Stringname=bankinfobean.getBankName();Stringname=bankinfobean.getCardType();}else{Toast.makeText(MainActivity.this,"卡号"+cardnum+"不合法,请重新输入",Toast.LENGTH_LONG).show();}
Tip
当输入完成后,将自动隐藏软键盘。