Skip to content

一个自定义的安卓验证码输入框控件、银行卡归属类型查询。

Notifications You must be signed in to change notification settings

longer96/VerifyCode

Repository files navigation

一个自定义的安卓验证码输入框控件、银行卡归属类型查询。

Dependency

  • Gradle

dependencies {
    implementation 'com.longer:verifycode:1.0.4'
}

Introduction

image image image

  • 自带了方框、下划线、圆圈输入框的样式
  • 支持自定义验证框长度、字体大小、颜色、验证框宽高度、间距
  • 支持选中与非选中边框颜色、内容背景颜色
  • 支持自定义选中或非选中背景
  • 支持输入类型的设置(是否为数字)
  • 支持是否将验证码已密码的方式显示
  • 支持银行卡\信用卡 卡号的验证以及卡种,归属银行的查询
  • 输入键盘的隐藏

ScreenCapture





  • 密码输入 app:isShowPwd

  • 可以通过自定义背景,实现很多样式

  • 文字输入,字体颜色修改

Function instruction

attribute function name instruction
codeLength setCodeLength(5) 验证码长度 默认5
codeTextSize setCodeTextSize(29) 验证码字体大小 8
codeTextColor setCodeTextColor(Color.RED) 验证码字体颜色
tvWidth setTvWidth(40) 验证码框的宽度
tvHeight setTvHeight(40) 验证码框的高度
codeMargin setCodeMargin(10) 验证码框间距
bgNormal setBgNormal(R.drawable.bg_line_normal) 验证码默认背景(使用用户自定义drawable,将无法使用只带方法修改边框颜色)
bgFocus setBgFocus(R.drawable.bg_line_focus) 验证码焦点背景(同上)
codeStyle setCodeStyle(1001) 输入框样式 1000:方框(默认) 1001:圆圈 1002:下划线
normalStrokeColor setNormalStrokeColor(Color.RED) 正常时边框颜色
normalContentColor setNormalContentColor(Color.RED) 正常时内容背景颜色
focusStrokeColor setFocusStrokeColor(Color.BLUE) 焦点时边框颜色
focusContentColor setFocusContentColor(Color.BLUE) 焦点时内容背景颜色
isBold setBold(true) 是否加粗 true false
strokeSize setStrokeSize(2) 边框的宽度
isNumber setNumber(false) 是否输入类型为数字 true(默认) false
isShowPwd setShowPwd(true) 是否隐藏输入为密码符号 true false(默认)

Example

  • xml 简单使用

<com.longer.verifyedittext.PhoneCode
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />
  • xml 详细

<com.longer.verifyedittext.PhoneCode
    android:id="@+id/phonecode2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="20dp"
    android:paddingTop="20dp"
    android:paddingBottom="20dp"
    app:codeLength="5"
    app:codeMargin="10dp"
    app:codeStyle="1002"
    app:codeTextColor="@color/colorPrimary"
    app:codeTextSize="24sp"
    app:focusContentColor="#fff"
    app:focusStrokeColor="#eb6951"
    app:isNumber="false"
    app:isShowPwd="false"
    app:normalContentColor="#fff"
    app:normalStrokeColor="#eee"
    app:strokeSize="5dp"
    app:tvHeight="45dp"
    app:tvWidth="45dp" />
  • 验证码java

PhoneCode phonecode = findViewById(R.id.phonecode);
//隐藏键盘
phonecode.hideKeyboard();
//设置内容
phonecode.setText("123");
//清除背景样式
phonecode.setBgNormal(null);
phonecode.setBgFocus(null);

//设置监听
phonecode.setOnVCodeCompleteListener(new PhoneCode.OnVCodeInputListener() {
        @Override
        public void vCodeComplete(String verificationCode) {
            vcode = verificationCode;
            Toast.makeText(MainActivity.this, "验证码: " + verificationCode, Toast.LENGTH_SHORT).show();
        }
    
        @Override
        public void vCodeIncomplete(String verificationCode) {
        }
});

//显示软键盘
EditText et = phonecode.editText;
et.requestFocus();
InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
imm.showSoftInput(et, InputMethodManager.SHOW_IMPLICIT);
  • 银行卡号验证java

BankInfoBean bankinfobean = new BankInfoBean(cardnum);
//或者
BankInfoBean bankinfobean = new BankInfoBean();
bankinfobean.setTotalBankcode(cardnum);

//验证银行卡是否有效
bankinfobean.checkBankCard(cardnum);

if (checkBankCard(cardnum)) {
    String name = bankinfobean.getBankName();
    String name = bankinfobean.getCardType();
} else {
    Toast.makeText(MainActivity.this, "卡号 " + cardnum + " 不合法,请重新输入", Toast.LENGTH_LONG).show();
}

Tip

  • 当输入完成后,将自动隐藏软键盘。

About

一个自定义的安卓验证码输入框控件、银行卡归属类型查询。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages