我已经制作了一个子类自定义对话框.它包含一个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,如何使软键盘出现?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)