Dialog 软键盘 弹 收起问题

一、软键盘收起问题。

通常我们会在dialog 监听dialog dismiss  或者监听点击外围操作进行软键盘回收处理,而此时我们持有软键盘的Edittext对象已经被回收所以无法进行响应处理,最终导致我们无法正常收起软键盘。

 解决办法,我们可以从Dialog dismiss入手,重写Dialog dismiss   作如下操作:

@Override
public void dismiss() {
    View view = getCurrentFocus();
    if(view instanceof TextView){
        InputMethodManager mInputMethodManager = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
        mInputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.RESULT_UNCHANGED_SHOWN);
    }
    super.dismiss();
}

二、 软键盘弹起问题。

通常我们的产品小主会要求我们 弹出登入框 支付框等等,之类的弹框弹起的同时呼出软键盘,如遇到软键盘无法正常弹起时,我们可以利用handler进行延时操作,从而你会发现此时是可以弹起的 


版权声明:本文为qq_25138543原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。