android – 一旦我用EditText显示一个Dialog,如何使软键盘出现?

android – 一旦我用EditText显示一个Dialog,如何使软键盘出现?,第1张

概述我在这里阅读了几篇文章,并尝试使用谷歌搜索.但我仍然有这个问题: 我已经制作了一个子类自定义对话框.它包含一个EditText和一个Button(“OK”).一旦对话框d出,我想让键盘自动显示. 我通过这样做成功了: imm = (InputMethodManager) EditDialog.this.getContext().getSystemService(Context.INPUT_METH 我在这里阅读了几篇文章,并尝试使用谷歌搜索.但我仍然有这个问题:
我已经制作了一个子类自定义对话框.它包含一个EditText和一个button(“OK”).一旦对话框d出,我想让键盘自动显示.

我通过这样做成功了:

imm = (inputMethodManager) EditDialog.this.getContext().getSystemService(Context.input_METHOD_SERVICE);imm.toggleSoftinput(inputMethodManager.SHOW_FORCED,inputMethodManager.HIDE_NOT_ALWAYS);

在我的自定义对话框的onCreate()和

imm.hIDeSoftinputFromWindow(editText.getwindowToken(),0);

在我的解雇().

一旦d出对话框,这将打开键盘,并在按下“确定”按钮后关闭键盘.

但是,如果软键盘打开,我按下我的手机/模拟器的HOME按钮,他们的键盘将保持打开状态,因为 – 我想 – 我用SHOW_FORCED强行打开它.因此,我试图隐藏(使用来自inputMethodManager的toggleSoftinput())键盘,如果它在对话框的父活动onPause()方法中打开.这似乎只能使用解决方法,如HERE所示.

TL; DR:当我的带有EditText和button的Dialogd出时(我专注于EditText),我希望显示软键盘.我得到了它的工作,但它涉及写很多黑客正确关闭它.

编辑:我的代码基于THIS

解决方法 这回答了 here,对我来说很有用.如果在显示键盘时按下主页按钮,则在按下主页键后会正确隐藏. 总结

以上是内存溢出为你收集整理的android – 一旦我用EditText显示一个Dialog,如何使软键盘出现?全部内容,希望文章能够帮你解决android – 一旦我用EditText显示一个Dialog,如何使软键盘出现?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1126243.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存