有关android 软键盘弹出和隐藏的问题

bbmiku 2012-09-29 01:12:09
现在有一个Dialog ,里面有一系列选项,点击每一选项都会隐藏当前父Dialog,然后显示子Dialog, 子Dialog 都有一个确定按扭, 当点击这个按扭时,子Dialog消失,返回到父Dialog,以进行其它选择。每个子Dialog都有一个输入框,需要每次显示这个Dialog时也同时打开软键盘,需求是软键盘是跟随子Dialog的显现和消失的。现在有个问题是,子Dialog消失后软键盘不会消失,必需父Dialog消失后才会消失,这与需求不符。我试过点击子Dialog确定按扭时不再弹出父Dialog,这样软键盘就会自动消失,但是父Dialog是必须出现的,该怎么办呢,求解决?

onCreate()函数已经添加过这句代码:


getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN |
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);


让软键盘弹出的代码:

new Handler().postDelayed(new Runnable() {

public void run() {
InputMethodManager imm = (InputMethodManager)editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_FORCED);
}
}, 100);



我试过让父Dialog等待100毫秒再出现,这种方法可以成功的隐藏软键盘,但是经理要我查明原因,为什么子Dialog消失后软键盘不会消失,这明明跟父Dialog没有关系啊!!求大虾帮忙!!谢谢!!
...全文
769 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
AMinfo 2012-09-29
  • 打赏
  • 举报
回复
运行速度过快,会导致软键盘判断时误检测到父Dialog有输入框。

80,410

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧