解决Dialog 消失,输入法不消失的问题

简介: 前言:今天遇到一个奇怪的问题,Activity 里面弹出一个 dialog , 这个dialog里面有EditText 。        问题:当 dialog 里面的输入法出现的时候,此时让diolog 消失,输入法不消失。
前言:今天遇到一个奇怪的问题,Activity 里面弹出一个 dialog , 这个dialog里面有EditText 。

       问题:当 dialog 里面的输入法出现的时候,此时让diolog 消失,输入法不消失。

 

效果图如下:

         

 

dialog 创建方法:

  final AlertDialog.Builder builder = new AlertDialog.Builder(this);
  final AlertDialog dialog = builder.create() ;

 

1、使用下面的代码没有效果

 /**
     * 隐藏软键盘
     */
    void hideInput () {
        InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        if(inputMethodManager.isActive()){
            inputMethodManager.hideSoftInputFromWindow( this.getCurrentFocus().getWindowToken(), 0);
        }
    }

  

2、解决方法    

 //隐藏输入法
  InputMethodManager manager= (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
  manager.hideSoftInputFromWindow( dialog.getCurrentFocus().getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);

 

相关文章
|
JavaScript 前端开发 开发者
20-定位一闪而过的dialog
20-定位一闪而过的dialog
|
Android开发
Android点击空白区域,隐藏输入法软键盘
Android点击空白区域,隐藏输入法软键盘
665 0
|
Web App开发
Chrome浏览器黑屏,左上顶角缩放三个按钮消失
Chrome浏览器黑屏,左上顶角缩放三个按钮消失
618 0
Chrome浏览器黑屏,左上顶角缩放三个按钮消失
|
Web App开发 XML 存储
IE消失了,但我们会想念它
微软此前已暗示将放弃IE品牌。本周,微软确认,未来的浏览器将启用新名称。
159 0
IE消失了,但我们会想念它
|
C# Windows
C#代码像QQ的右下角消息框一样,无论现在用户的焦点在哪个窗口,消息框弹出后都不影响焦点的变化,那么有两种方法
你QQ的右下角消息框一样,无论现在用户的焦点在哪个窗口,消息框弹出后都不影响焦点的变化,那么有两种方法:   要么重写需要弹出的窗体的事件: protected override CreateParams CreateParams     {     get     {         const ...
1209 0
2个有焦点时文字消失或变淡效果
有焦点时文字消失。 运行代码-文字消失版 有焦点时文字变淡。 运行代码-文字变灰版 本文转自懒得安分博客园博客,原文链接:http://www.cnblogs.com/jikey/archive/2013/04/26/3044694.
744 0