一个你想象不到的验证码输入框!
SplitEditText for Android 是一个灵活的分割编辑框。常常应用于 验证码输入 、密码输入 、等场景。
之所以造这个轮子,是因为之前有这样的需求,然后也用过其它类似开源的库(VerificationCodeView),但是需求随着需求的变动,之前使用的库就不太满足现有的需求。所以最近抽空写了一个。
特性说明
- 支持设置框数量
- 支持设置框的风格样式
- 支持根据状态区分框颜色
- 基于EditText实现,更优雅
SplitEditText 自定义属性说明
| 属性 | 值类型 | 默认值 | 说明 | 
|---|---|---|---|
| setStrokeWidth | dimension | 1dp | 画笔描边的宽度 | 
| setBorderColor | color | #FF666666 | 边框颜色 | 
| setInputBorderColor | color | #FF1E90FF | 已输入文本的边框颜色 | 
| setFocusBorderColor | color | 焦点框的边框颜色 | |
| setBoxBackgroundColor | color | 框的背景颜色 | |
| setBorderCornerRadius | dimension | 0dp | 框的圆角大小(当 BorderSpacing 为 0dp 时,只有最左和最右两端的框有圆角) | 
| setBorderSpacing | dimension | 8dp | 框与框之间的间距大小 | 
| setMaxLength | integer | 6 | 允许输入的最大长度(框个数量) | 
| setBorderStyle | enum | box | 边框风格 | 
| setTextStyle | enum | plain_text | 文本风格(可以是明文或者密文,默认:明文) | 
| setCipherMask | string | * | 密文掩码(当 TextStyle 为密文时,可自定义密文掩码) | 
| setFakeBoldText | boolean | false | 是否是粗体 | 
引入
Maven:
  com.king.view
  splitedittext
  1.0.0
  pom
Gradle:
//AndroidX
implementation 'com.king.view:splitedittext:1.0.0'如果Gradle出现compile失败的情况,可以在Project的build.gradle里面添加如下:(也可以使用上面的GitPack来complie)
allprojects {
    repositories {
        maven { url 'https://dl.bintray.com/jenly/maven' }
    }
}示例
布局示例
    <>
        android:id="@+id/splitEditText"
        android:layout_width="match_parent"
        android:layout_height="45dp"
        android:inputType="number"/>代码示例
Kotlin
    //设置监听
    splitEditText.setOnTextInputListener(object : SplitEditText.OnTextInputListener {
        override fun onTextInputChanged(text: String, length: Int) {
            //TODO 文本输入改变
        }
        override fun onTextInputCompleted(text: String) {
            //TODO 文本输入完成
        }
    })
Java
    //设置监听
    splitEditText.setOnTextInputListener(new SplitEditText.OnTextInputListener(){
        @Override
        public void onTextInputChanged(String text, int length) {
            //TODO 文本输入改变
        }
        @Override
        public void onTextInputCompleted(String text) {
            //TODO 文本输入完成
        }
    });
更多使用详情,请查看app中的源码使用示例
代码下载:jenly1314-SplitEditText-master
 
			
