`
fly_宇光十色
  • 浏览: 64675 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android关闭键盘时的一个小问题

 
阅读更多

最近遇到一个问题,拿出来跟大家分享下,并希望高手分析。

事情是这样的,我在一个新弹出的dialog里有一个输入框,希望在弹出的时候自动把软键盘打开,输入完点击确定或取消的时候把软键盘关闭。

创建dialog的代码

  AlertDialog.Builder builder=new AlertDialog.Builder(context);

        final AlertDialog dialog = builder.create();

点击取消的代码如下

 

 btnCancel.setOnClickListener(new OnClickListener(){
            
            @Override
            public void onClick(View v){
                dialog.cancel();
               KeyBoardUtils.closeKeybord(vNum, context);
            }
        });

 这么写dialog关闭了,但是软键盘并没有关。

不知道是为什么??

看了下KeyBoardUtils.closeKeybord里的代码

InputMethodManager imm = (InputMethodManager) mContext.getSystemService(Context.INPUT_METHOD_SERVICE);
		imm.hideSoftInputFromWindow(mEditText.getWindowToken(), 0);

 用的是hideSoftInputFromWindow,从window里隐藏。我这里先把dialog cancel掉了,是不是window就没了 ??

dialog.cancel();和KeyBoardUtils.closeKeybord(vNum, context);换个顺序试试。。完美解决!

 

 

0
0
分享到:
评论

相关推荐

    Android软键盘打开/关闭监听器

    在开发时遇到一个问题,需要对软键盘的打开与关闭操作进行监听。 但是由于android不直接提供对软键盘打开与关闭操作的监听器,所以必须自己来写一个关于软键盘打开/关闭的监听器。 原理是通过对...

    android 关闭软键盘

    ### Android关闭软键盘知识点详解 在Android开发过程中,软键盘(Soft Keyboard)的管理是非常重要的一个环节。合理的软键盘管理不仅能够提升用户体验,还能避免一些布局显示上的问题。本篇文章将详细阐述如何在...

    android自定义键盘数字键与英文键盘切换

    本教程将探讨如何在Android Studio中实现一个可以切换数字键与英文键盘的自定义键盘,即“android自定义键盘数字键与英文键盘切换”。 首先,创建一个新的Android Studio项目,选择Empty Activity模板。在`res/...

    android 输入法键盘弹出与否判断和输入法键盘弹出时将界面滚动到指定位置demo

    这个"android 输入法键盘弹出与否判断和输入法键盘弹出时将界面滚动到指定位置demo"着重于解决两个关键问题:一是检测输入法键盘是否弹出,二是当键盘弹出时如何自动调整界面布局以确保重要内容可见。 首先,我们要...

    Android 设置一个底部控件view随着软键盘的弹出而上移

    `CoordinatorLayout`是一个可协调其子视图相互交互的布局容器,它可以监听到软键盘的打开和关闭事件。`AppBarLayout`则可以用于顶部栏的滑动隐藏。底部的视图可以设置为`CoordinatorLayout`的直接子视图,这样它就会...

    android软键盘状态判断DEMO

    在Android开发中,软键盘的状态判断是一个常见的需求,特别是在处理输入框输入时,需要知道软键盘的显示或隐藏以便优化布局。本DEMO——"android软键盘状态判断DEMO"提供了一个解决方案,它能判断软键盘的显示状态,...

    Android软键盘与聊天页面底部布局之间优雅地切换

    3. **自定义输入法栏**:如果想实现类似微信那样的聊天界面,可以创建一个浮动的输入法栏,它不会被软键盘遮挡,同时可以随着软键盘的开关进行适当的移动。这需要编写自定义布局并监听软键盘状态。 4. **监听软键盘...

    自定义车牌号键盘_Android(Java)

    本文将深入探讨如何使用Java语言在Android平台上实现一个自定义车牌号键盘。 首先,我们要明白自定义键盘的基本原理。Android系统提供了一个叫做`InputMethodService`的服务,它是`Service`的一个子类,专门用于...

    android adjustNothing下获取键盘高度

    特别是对于那些希望保持背景不随键盘移动的应用,开发者需要掌握如何在`adjustNothing`模式下处理键盘出现时的问题。`adjustNothing`是Android系统提供的调整窗口策略之一,它表示在键盘弹出时,应用程序窗口不会做...

    Android自定义输入法软键盘

    本文将深入探讨如何在Android系统中实现一个自定义输入法,主要基于提供的博客链接——《Android自定义输入法软键盘》。 首先,要创建一个自定义输入法,我们需要创建一个新的Android项目,并在`AndroidManifest....

    Android解决软键盘弹起时遮住登录按钮的问题

    这段代码会在用户输入手机号时实时进行格式化,每三位数字之间添加一个空格,同时确保输入的长度不超过11位。 通过以上步骤,我们便成功解决了Android应用中软键盘弹出遮挡登录按钮的问题,实现了点击空白区域收起...

    调用android自定义软键盘demo

    本文将详细讲解如何实现一个Android自定义软键盘,并介绍如何在TV设备上通过鼠标和遥控器进行操作。我们以"调用android自定义软键盘demo"为例,来探讨这一主题。 首先,创建自定义软键盘的关键在于创建一个新的`...

    android全屏模式下计算键盘的大小

    在Android开发中,全屏模式下处理键盘的...总的来说,"android全屏模式下计算键盘的大小"是一个涉及到Android系统API理解、布局适配以及事件监听的综合问题,需要开发者具备扎实的Android基础和良好的问题解决能力。

    android 监听软键盘状态(弹起还是收起)

    为了避免重复计算,我们可以使用一个布尔变量`isKeyboardOpen`来记录当前键盘的状态,并在每次调用`onGlobalLayout()`时检查它。 ```java boolean isKeyboardOpen = false; @Override public void onGlobalLayout...

    Android Dialog与软键盘的正确打开方式

    在实际项目中,可能还需要考虑更多细节,例如处理Dialog的生命周期、防止Dialog在软键盘显示时被关闭等问题。对于这些复杂情况,开发者需要仔细处理各个回调,确保Dialog的逻辑正确无误。 最后,通过提供的`Dialog...

    Android 数字键盘 随机产生数字

    本文将深入探讨一个具体的实现案例:“Android 数字键盘 随机产生数字”,通过分析给定的标题、描述及部分代码内容,我们将详细介绍这一功能的实现原理与步骤。 #### 关键知识点 1. **数字键盘设计**:设计并实施...

    Android高级应用源码-android解决软键盘遮挡输入框的示例代码.rar

    在Android开发中,软键盘遮挡输入框是一个常见的问题,特别是在设计底部弹出框或者聊天界面时。当用户点击输入框触发软键盘弹出时,由于屏幕空间有限,输入框可能会被键盘遮挡,影响用户体验。这个"Android高级应用...

    Android键盘面板冲突 布局闪动处理方案(聊天界面键盘冲突)

    在Android应用开发中,尤其是设计聊天界面时,经常会遇到键盘面板与布局的冲突问题,这主要体现在用户在输入框上点击触发软键盘弹出时,布局会发生闪烁或移动,导致用户体验不佳。这个问题通常被称为“键盘面板冲突...

    android 5.1 禁用usb 鼠标和键盘

    使用系统是android5.1 ...客户的需求是在设置选项里面添加两个选项可以分别禁用usb鼠标 和 键盘 已经修改完成亲测!有完整的步骤和代码! 根据代码小修改一下就可以变成 随时禁用和开启usb鼠标键盘

    Android高级应用源码-android解决软键盘遮挡输入框的示例代码.zip

    在Android开发中,软键盘遮挡输入框是一个常见的问题,特别是在设计底部弹出框或者聊天界面时。当用户点击输入框触发软键盘弹出时,由于屏幕空间限制,输入框可能会被键盘遮挡,影响用户体验。针对这一问题,Android...

Global site tag (gtag.js) - Google Analytics