All Projects → GuilhE → Keyboardstateevents

GuilhE / Keyboardstateevents

Licence: apache-2.0
LiveData notification when keyboard opens or closes, plus some handy extension functions

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Keyboardstateevents

LifecycleCells
An Android library that provides a Lifecycle to any ViewHolder through the implementation of the LifecycleOwner interface, allowing it to interact with a Lifecycle-Aware Component.
Stars: ✭ 19 (-86.43%)
Mutual labels:  lifecycle, livedata
Wanandroid
Jetpack MVVM For Wanandroid 最佳实践 !
Stars: ✭ 1,004 (+617.14%)
Mutual labels:  lifecycle, livedata
Android Architecture Components
The template project that uses Android Architecture Components with Repository pattern. The simple app that uses awesome Fuel library instead of Retrofit for perfoming HTTP request. The app also persists data using the Room library and display data in RecyclerView.
Stars: ✭ 329 (+135%)
Mutual labels:  lifecycle, livedata
MockAppMVVM
A sample app structure using the MVVM architecture using Retrofit, Dagger2, LiveData, RxJava, ViewModel and Room.
Stars: ✭ 14 (-90%)
Mutual labels:  lifecycle, livedata
Easychatandroidclient
EasyChat是一个开源的社交类的App。主要包含消息、好友、群组等相关的IM核心功能。部分界面参照了QQ、微信等相关社交APP。EasyChat APP整体采用MVVM模式,基于JetPack(Lifecycle,LiveData,ViewModel,Room)构建
Stars: ✭ 64 (-54.29%)
Mutual labels:  lifecycle, livedata
CoMvvmHelper
android mvvm 基础框架,适合日常快速开发。有需要添加的内容或者发现问题可以提 issue。
Stars: ✭ 26 (-81.43%)
Mutual labels:  lifecycle, livedata
Mvvmarms
Android MVVM Architecture Components based on MVPArms and Android Architecture Components.
Stars: ✭ 425 (+203.57%)
Mutual labels:  lifecycle, livedata
Relax
☘☘Relax 基于Kotlin语言编写的一套组件化框架,不紧整体组件化、内部也高度组件化🎋你可配置MVP、MVVM的开发模式、也可以配置所需要的业务组件🍁🍁
Stars: ✭ 253 (+80.71%)
Mutual labels:  lifecycle, livedata
Jetpackmvvm
🐔🏀一个Jetpack结合MVVM的快速开发框架,基于MVVM模式集成谷歌官方推荐的JetPack组件库:LiveData、ViewModel、Lifecycle、Navigation组件 使用Kotlin语言,添加大量拓展函数,简化代码 加入Retrofit网络请求,协程,帮你简化各种操作,让你快速开发项目
Stars: ✭ 1,100 (+685.71%)
Mutual labels:  lifecycle, livedata
Tdcapp
Sample app which access the TDC (The Developer's Conference) REST API.
Stars: ✭ 55 (-60.71%)
Mutual labels:  lifecycle, livedata
AndriodDevelopLibrary
Lifecycle->ViewModel+LiveData+Repository
Stars: ✭ 16 (-88.57%)
Mutual labels:  lifecycle, livedata
Aachulk
️🔥️🔥️🔥AACHulk是以Google的ViewModel+DataBinding+LiveData+Lifecycles框架为基础, 结合Okhttp+Retrofit+BaseRecyclerViewAdapterHelper+SmartRefreshLayout+ARouter打造的一款快速MVVM开发框架
Stars: ✭ 109 (-22.14%)
Mutual labels:  lifecycle, livedata
TeamManagerApp
A sample app structure using the MVVM architecture LiveData, RxJava, ViewModel, Room and the Navigation Arch Components.
Stars: ✭ 36 (-74.29%)
Mutual labels:  lifecycle, livedata
AndroidGo
Android、Flutter 开发者帮助 APP。包含事件分发、性能分析、Google Jetpack组件、OkHttp、RxJava、Retrofit、Volley、Canvas绘制以及优秀博文代码案例等内容,帮助开发者快速上手!
Stars: ✭ 30 (-78.57%)
Mutual labels:  lifecycle, livedata
LifecycleMvp
No description or website provided.
Stars: ✭ 20 (-85.71%)
Mutual labels:  lifecycle, livedata
Android Jetpack Demo
🔥 快速入门Android Jetpack以及相关Kotlin、RxJava、MVVM等主流技术,独立构架App的基础技能
Stars: ✭ 335 (+139.29%)
Mutual labels:  lifecycle, livedata
Mvvmframe
🏰 MVVMFrame for Android 是一个基于Google官方推出的Architecture Components dependencies(现在叫JetPack){ Lifecycle,LiveData,ViewModel,Room } 构建的快速开发框架。有了MVVMFrame的加持,从此构建一个MVVM模式的项目变得快捷简单。
Stars: ✭ 218 (+55.71%)
Mutual labels:  lifecycle, livedata
Jetpack Mvvm Scaffold
人生苦短,让脚手架为你节省时间。(目前作为《最佳实践》项目的 Dev 版来优先更新)
Stars: ✭ 239 (+70.71%)
Mutual labels:  lifecycle, livedata
Readhubclient
Readhub客户端
Stars: ✭ 44 (-68.57%)
Mutual labels:  lifecycle, livedata
Aacomponents
基于google Android Architecture Components 封装实现组件式MVP快速开发框架
Stars: ✭ 66 (-52.86%)
Mutual labels:  lifecycle, livedata

KeyboardStateEvents

Android Arsenal

Get notified through LiveData when Keyboard is open or closed

Installation

KeyboardStateEvents is distributed through Maven Central, Jcenter and Jitpack.

implementation 'com.github.guilhe:keyboard-state-events:${LATEST_VERSION}'

Maven Central Download Bintray

Usage

Call bindKeyboardStateEvents() in you AppCompatActivity or FragmentActivity and observe KeyboardStateLiveData.state to get notified:

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        ...
        KeyboardStateLiveData.state.observe(this, Observer {...})
        bindKeyboardStateEvents()
    }
}

Just that and you're done! 😎

Also, some handy extension functions:

ComponentActivity.toggleKeyboard()
ComponentActivity.dismissKeyboard()
ComponentActivity.isKeyboardOpen()
ViewGroup.isKeyboardOpen()
Sample

Dependencies

Bugs and Feedback

For bugs, questions and discussions please use the Github Issues.

LICENSE

Copyright (c) 2020-present GuilhE

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].