软键盘在Android中的活动中打开和关闭监听器

Soft keyboard open and close listener in an activity in Android(软键盘在Android中的活动中打开和关闭监听器)
本文介绍了软键盘在Android中的活动中打开和关闭监听器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 Activity,其中有 5 个 EditText.当用户单击第一个 EditText 时,软键盘打开以在其中输入一些值.我想在软键盘打开时以及当用户单击第一个 EditText 时将其他一些 View 的可见性设置为 Gone 以及当软键盘在后退按钮按下时从相同的 EditText 关闭时.然后我想将其他一些 View 的可见性设置为可见.

I have an Activity where there are 5 EditTexts. When the user clicks on the first EditText, the soft keyboard opens to enter some value in it. I want to set some other View's visibility to Gone when the soft keyboard opens and also when the user clicks on the first EditText and also when the soft keyboard closes from the same EditText on the back button press. Then I want to set some other View's visibility to visible.

当软键盘通过点击 Android 中的第一个 EditText 打开时,是否有任何监听器或回调或任何 hack?

Is there any listener or callback or any hack for when the soft keyboard opens from a click on the first EditText in Android?

推荐答案

小菜一碟KeyboardVisibilityEvent 库

KeyboardVisibilityEvent.setEventListener(
    getActivity(),
    new KeyboardVisibilityEventListener() {
        @Override
        public void onVisibilityChanged(boolean isOpen) {
            // Ah... at last. do your thing :)
        }
    });

清水康弘的作品

这篇关于软键盘在Android中的活动中打开和关闭监听器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

How to target newer versions in .gitlab-ci.yml using auto devops (java 11 instead of 8 and Android 31 instead of 29)(如何在.gitlab-ci.yml中使用自动开发工具(Java 11而不是8,Android 31而不是29)瞄准较新的版本)
Android + coreLibraryDesugaring: which Java 11 APIs can I expect to work?(Android+core LibraryDesugering:我可以期待哪些Java 11API能够工作?)
How to render something in an if statement React Native(如何在If语句中呈现某些内容Reaction Native)
How can I sync two flatList scroll position in react native(如何在本机Reaction中同步两个平面列表滚动位置)
Using Firebase Firestore in offline only mode(在仅脱机模式下使用Firebase FiRestore)
Crash on Google Play Pre-Launch Report: java.lang.NoSuchMethodError(Google Play发布前崩溃报告:java.lang.NoSuchMethodError)