aminography / EditTextInterceptor

EditTextInterceptor is a TextWatcher which delivers text changes along with typing status.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

EditText Interceptor

Android Arsenal Download

EditTextInterceptor is a TextWatcher which intercepts on text changes considering a breakable timeout. Actually, it delivers text changes along with typing status.


Suppose you have a search box which runs a query based on user input, on the fly. Now, if you use an instance of TextWatcher to inform about text changes, the only choice is to run a query for each change.


Using EditTextInterceptor you'll be able to run a query after finishing the user typing. It leads to reduce number of unused queries followed by performance optimization and less resource consumption.


Download

EditTextInterceptor is available on bintray to download using build tools systems. Add the following lines to your build.gradle file:

repositories {
    jcenter()
}

dependencies {
    implementation 'com.aminography:edittext-interceptor:1.0.2'
}

Usage

As an instance of EditTextInterceptor is a TextWatcher too, simply pass it to the EditText.addTextChangedListener().

// Intercept timeout is defined 500ms
editText.addTextChangedListener(object : EditTextInterceptor(500) {
    override fun onInterceptText(text: String, isTyping: Boolean) {
        // TODO
    }
})

License

Copyright 2019 Mohammad Amin Hassani.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

About

EditTextInterceptor is a TextWatcher which delivers text changes along with typing status.

License:Apache License 2.0


Languages

Language:Kotlin 64.5%Language:Java 34.6%Language:Shell 0.8%