最近项目中用到 dialog弹出对话框功能, 弹出后输入 密码, 本以为这是一个很简单问题,但是做好发现Edittext 无法调出输入法.
解决方法,我也是百度找到的 . 记录一下,便于下次使用:
final Dialog alertDialog = new Dialog(this,R.style.CustomDialogStyle); alertDialog.show(); Window window = alertDialog.getWindow(); window.setBackgroundDrawable(new ColorDrawable(0));//设置背景透明 window.setContentView(R.layout.dialog_info); final EditText pwd = (EditText) window.findViewById(R.id.pwd); Button confirm = (Button) window.findViewById(R.id.btn_confirm); Button cancel = (Button) window.findViewById(R.id.btn_cancel);
下面是 btn的监听 ... 省略
上面创建对话框,用到一个样式如下CustomDialogStyle:
<style name="CustomDialogStyle" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <item name="android:background">@android:color/transparent</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:backgroundDimAmount">0.6</item> </style>
对话框布局很简单,我省略了,写的也比较丑 ,里面一个 EditText, 2个button
对话框还有一种创建方式:
final AlertDialog alertDialog = new AlertDialog.Builder(this).create();
这也是我经常用的一种方式,一般我用于显示一些信息, 并不输入内容. 最后来个效果图吧, 尽管很丑陋
android- 对话框中弹出edittext 不能调出输入法
原文:http://www.cnblogs.com/android-zcq/p/5719340.html