• Stars
    star
    206
  • Rank 190,504 (Top 4 %)
  • Language
    Java
  • License
    MIT License
  • Created over 7 years ago
  • Updated over 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

一款简单、好用的自定义EditText(含一键删除&自定义样式)

SuperEditText

Click to see English Document

  • 作者:Carson_Ho
  • 概述

示意图

注:关于该开源项目的意见 & 建议可在Issue上提出。欢迎 Star !

1. 简介

一款 简单 & 好用SuperEditText控件

Github地址:Super_EditText

效果图

2. 功能介绍

2.1 需求场景

对于 EditText来说,一般的需求有:

  • 方便用户因出现输入错误而进行2次输入
  • 标识用户正在填写项
  • 根据具体场景增加一定的UI元素

2.2 功能需求

根据需求场景,得出EditText需要具备的功能如下:

  • 一键删除
  • 丰富的自定义样式:左侧图标、删除功能图标、分割线 & 光标 样式变化。具体如下图:

示意图

注:该样式的设置是系统自带的 API 所不具备的

  • 功能列表

示意图

2.3 功能示意

效果图

3. 特点

对比市面上EditText控件,该控件Super_EditText 的特点是:

3.1 功能实用

  • 一键删除功能 在需求中非常常见,现将其封装后更加方便使用
  • 可自定义样式程度高(比自带的强大 & 方便),不复杂却能满足一般的EditText使用需求

可自定义样式如下:(注:该样式的设置是系统自带的 API 所不具备的)

示意图

3.2 使用简单

仅需要简单的xml属性配置

下面1节会详细介绍其使用方法

3.3 二次开发成本低

所以,在其上做二次开发 & 定制化成本非常低。

4. 具体使用

该款Super_EditText使用非常简单,仅需2步:

步骤1:导入控件库

主要有 Gradle & Maven 2种方式:

  • 方式1:Gradle引入依赖 build.Gradle
dependencies {
    compile 'com.carson_ho:Super_EditText:1.0.0'
}
  • 方式2:Maven引入依赖 pom.xml
<dependency>
  <groupId>com.carson_ho</groupId>
  <artifactId>Super_EditText</artifactId>
  <version>1.0.0</version>
  <type>pom</type>
</dependency>

步骤2:设置动画属性

  • 属性说明

示意图

  • 具体属性设置

示意图

  • 使用示例 在XML文件中进行设置 activity_main.xml
<scut.carson_ho.diy_view.SuperEditText
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        // 设置左侧图标
        app:ic_left_click="@drawable/ic_left_click"
        app:ic_left_unclick="@drawable/ic_left_unclick"
        app:left_x="0"
        app:left_y="0"
        app:left_width="60"
        app:left_height="60"

        // 设置删除图标
        app:ic_delete="@drawable/delete"
        app:delete_x="0"
        app:delete_y="0"
        app:delete_width="80"
        app:delete_height="80"

        // 设置分割线
        app:lineColor_click="@color/colorfocus"
        app:lineColor_unclick="@color/colorDeafult"
        app:linePosition="1"

        // 设置光标
        app:cursor="@drawable/cursortest"

         />

cursortest.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <solid android:color="@color/colorfocus" />
    <size android:width="1dp" />

</shape>

5. 完整Demo地址

Carson_Ho的Github地址:Super_EditText

效果图

6. 源码解析

具体请看文章Android自定义View:手把手教你做一款简单实用的SuperEditText(一键删除&自定义样式)

7. 开源协议

Super_EditText 遵循 MIT 开源协议

8. 贡献代码

  • 具体请看:贡献代码说明
  • 关于该开源项目的意见 & 建议可在Issue上提出。欢迎 Star !

9. 版本说明

2017-08-14 v1.0.0 :完成一键删除 & 自定义样式

关于作者

More Repositories

1

Search_Layout

一款封装了 历史搜索记录功能 & 样式 的Android自定义搜索框
Java
929
star
2

RxJavaLearningMaterial

这是一份详细的RxJava学习攻略 & 指南
Java
702
star
3

Kawaii_LoadingView

一个可爱 & 小清新的加载等待Android控件
Java
257
star
4

Webview_Cache

WebView的缓存方案:H5缓存机制 + 资源预加载 + 资源拦截
Java
256
star
5

TimeAxle_View

自定义View实践:时间轴
Java
95
star
6

AndroidLearning

Android学习
Java
91
star
7

VLayout-Guide

VLayout使用指南
Java
86
star
8

Socket_learning

a simple demo for socket
Java
73
star
9

RetrofitDemo

Retrofit Learning
Java
71
star
10

Check_Net

Demo for checking internet link
Java
66
star
11

WebView_InterceptRequest

WebView资源拦截
Java
53
star
12

MultiThread_learning

多线程学习资料
Java
43
star
13

ShootAtOffer

剑指Offer(第二版)所有面试题总结
Java
39
star
14

Toptabbar

Demo for Top & Bottom tabbar
Java
34
star
15

RxJava_Flowable

learning for RxJava Flowable
Java
33
star
16

DataBase_Demo

Demo for SQLite DataBase operation
Java
32
star
17

AlgorithmLearning

Learning Algorithm
Java
30
star
18

PropertyAnimator_ofObject

PropertyAnimator_ofObject Demo
Java
25
star
19

NDK_Demo

Learing NDK
Java
21
star
20

ContentProvider

a Demo for ContentProvider
Java
15
star
21

Tab_menu_Demo

底部菜单栏学习Demo
Java
13
star
22

DIY_View

DEMO for DIY_View
Java
13
star
23

App_1shot_Finsh

多种方法实现"一键退出App"
Java
10
star
24

ProtocolBuffer

How to use ProtocolBuffer
Java
10
star
25

Service_Server

Demo for RemoteService Client
Java
9
star
26

RecyclerView

Demo for RecyclerView
Java
7
star
27

Service_Client

Demo for RemoteService Client
Java
6
star
28

ContentProvider2

a process to get data from content Provider
Java
6
star
29

Android_Banner

Demo for Android_Banner
Java
6
star
30

AndroidxFlutter

Android Flutter的使用
Java
5
star
31

DynamicProxy

Demo for DynamicProxy
Java
4
star
32

Java_Annotation

Demo for Java_Annotation
Java
3
star
33

AndroidLearningMaterial

a Learning Material of Android
Java
3
star
34

Demo_MiPush

Demo for MiPush
Java
2
star
35

RecyclerView_ItemDecoration

深入解析 RecyclerView ItemDecoration
Java
2
star
36

Reflection_Factory

Using Reflection optimaizes Factorypattern
Java
2
star
37

RxJava_ThreadControl

Java
1
star
38

Demo_Service

Demo for Service using
Java
1
star
39

Annation_Debug

a Annation for Test
Java
1
star
40

RxJava_ZipXRextrofit

a Demo for RxJava_Zip()X Rextrofit
Java
1
star
41

RxJava_FlatMapXRextrofit

RxJava x Rextrofit
Java
1
star
42

HandlerThread

Demo for HandlerThread
Java
1
star
43

Rxjava_BaseLearning

Rxjava_Base_Learning
Java
1
star