ITBOX首页投稿(暂停使用,暂停投稿)程序员首页投稿

Android自定义EditText:一款简单 & 实用

2017-08-14  本文已影响2910人  Carson带你学安卓

前言

效果图

已在Github开源:Super_EditText,欢迎 Star


目录

示意图

1. 简介

一款 自定义样式丰富 & 附带一键删除功能SuperEditText控件

已在Github开源:Super_EditText,欢迎 Star

效果图

2. 功能介绍

2.1 需求场景

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

2.2 功能需求

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

示意图

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

示意图

2.3 功能示意

效果图

3. 特点

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

3.1 功能实用

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

示意图

3.2 使用简单

仅需要简单的xml属性配置

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

3.3 二次开发成本低

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


4. 具体使用

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

步骤1:导入控件库

主要有 Gradle & Maven 2种方式:

dependencies {
    compile 'com.carson_ho:Super_EditText:1.0.0'
}
<dependency>
  <groupId>com.carson_ho</groupId>
  <artifactId>Super_EditText</artifactId>
  <version>1.0.0</version>
  <type>pom</type>
</dependency>

步骤2:设置动画属性

示意图 示意图
<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. 贡献代码


8. 总结

已在Github上开源:Super_EditText,欢迎 Star

效果图

请点赞!因为你的鼓励是我写作的最大动力!

相关文章阅读
Android开发:最全面、最易懂的Android屏幕适配解决方案
Android事件分发机制详解:史上最全面、最易懂
Android开发:史上最全的Android消息推送解决方案
Android开发:最全面、最易懂的Webview详解
Android开发:JSON简介及最全面解析方法!

Android四大组件:Service服务史上最全面解析
Android四大组件:BroadcastReceiver史上最全面解析


欢迎关注Carson_Ho的简书!

不定期分享关于安卓开发的干货,追求短、平、快,但却不缺深度

上一篇下一篇

猜你喜欢

热点阅读