SplitEditText 是一个灵活的分割编辑框。常常应用于验证码输入 密码输入等场景

Posted Wei_Leng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SplitEditText 是一个灵活的分割编辑框。常常应用于验证码输入 密码输入等场景相关的知识,希望对你有一定的参考价值。

SplitEditText

项目地址:jenly1314/SplitEditText 

简介: 🔢 SplitEditText 是一个灵活的分割编辑框。常常应用于验证码输入 、密码输入等场景。 更多:作者   提 Bug    标签:

正在上传…重新上传取消 正在上传…重新上传取消 正在上传…重新上传取消 正在上传…重新上传取消 正在上传…重新上传取消 正在上传…重新上传取消 正在上传…重新上传取消 正在上传…重新上传取消

SplitEditText for android 是一个灵活的分割编辑框。常常应用于 验证码输入 、密码输入 、等场景。

之所以造这个轮子,是因为之前有这样的需求,然后也用过其它类似开源的库(VerificationCodeView),但是需求随着需求的变动,之前使用的库就不太满足现有的需求。所以最近抽空写了一个。

特性说明

  • [x] 支持设置框数量
  • [x] 支持设置框的风格样式
  • [x] 支持根据状态区分框颜色
  • [x] 基于 EditText 实现,更优雅

Gif 展示

SplitEditText 自定义属性说明

属性值类型默认值说明
setStrokeWidthdimension1dp画笔描边的宽度
setBorderColorcolor#FF666666边框颜色
setInputBorderColorcolor#FF1E90FF已输入文本的边框颜色
setFocusBorderColorcolor焦点框的边框颜色
setBoxBackgroundColorcolor框的背景颜色
setBorderCornerRadiusdimension0dp框的圆角大小(当 BorderSpacing 为 0dp时,只有最左和最右两端的框有圆角)
setBorderSpacingdimension8dp框与框之间的间距大小
setMaxLengthinteger6允许输入的最大长度(框个数量)
setBorderStyleenumbox边框风格
setTextStyleenumplain_text文本风格(可以是明文或者密文,默认:明文)
setCipherMaskstring*密文掩码(当 TextStyle为密文时,可自定义密文掩码)
setFakeBoldTextbooleanfalse是否是粗体

引入

Maven:

<dependency>
  <groupId>com.king.view</groupId>
  <artifactId>splitedittext</artifactId>
  <version>1.0.0</version>
  <type>pom</type>
</dependency>

Gradle:

//AndroidX
implementation 'com.king.view:splitedittext:1.0.0'

Lvy:

<dependency org='com.king.view' name='splitedittext' rev='1.0.0'>
  <artifact name='$AID' ext='pom'></artifact>
</dependency>

如果 Gradle 出现 compile 失败的情况,可以在 Project 的 build.gradle 里面添加如下:(也可以使用上面的 GitPack 来 complie)

allprojects 
    repositories 
        maven  url 'https://dl.bintray.com/jenly/maven' 
    

示例

布局示例

    <com.king.view.splitedittext.SplitEditText
        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中的源码使用示例

 

以上是关于SplitEditText 是一个灵活的分割编辑框。常常应用于验证码输入 密码输入等场景的主要内容,如果未能解决你的问题,请参考以下文章

EasyUI datagrid 明细表格中编辑框 事件绑定 及灵活计算 可根据此思路 扩展其他

博客园 Markdown 编辑器指南

Unity3D 之UGUI 文本框和编辑框

android EditText彻底搞定输入框隐藏/显示背景 可编辑输入问题

Mask R-CNN为什么“家喻户晓”

Pandas:将一个数据框分割成同一个电子表格的多张表