在有EditText控件的AlertDialog对话框中自动弹出输入法
2015-01-09 10:22
260 查看
我们先回顾一下创建AlertDialog的一般步骤。
一 inflate AlertDialog的布局文件
例如,其中dlg就是我们的布局文件。
View layout = LayoutInflater.from(ctx).inflate(R.layout.dlg, null);
二 构建AlertDialog.Builder
AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(ctx);
三 设置Dialog的一些属性
比如多少个按钮,有无Title,如果有那么Title的文本是什么,以及还可以设置各个按钮的监听器
四 把布局设置到对话框
dialogBuilder.setView(layout)
五 创建对话框
AlertDialog dlg = dialogBuilder.create();
六 显示对话框
dlg.show();
今天,我们要在对话框显示的时候,同时显示输入法。我们知道,Activity设置AndroidManifest就可以。
但是,AlertDialog需要一些特殊的处理。其基本方法就是在创建对话框之后修改AlertDialog的窗口属性。
代码如下:
dlg.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
是不是很简单呢?
一 inflate AlertDialog的布局文件
例如,其中dlg就是我们的布局文件。
View layout = LayoutInflater.from(ctx).inflate(R.layout.dlg, null);
二 构建AlertDialog.Builder
AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(ctx);
三 设置Dialog的一些属性
比如多少个按钮,有无Title,如果有那么Title的文本是什么,以及还可以设置各个按钮的监听器
四 把布局设置到对话框
dialogBuilder.setView(layout)
五 创建对话框
AlertDialog dlg = dialogBuilder.create();
六 显示对话框
dlg.show();
今天,我们要在对话框显示的时候,同时显示输入法。我们知道,Activity设置AndroidManifest就可以。
但是,AlertDialog需要一些特殊的处理。其基本方法就是在创建对话框之后修改AlertDialog的窗口属性。
代码如下:
dlg.getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
是不是很简单呢?
相关文章推荐
- 在有EditText控件的AlertDialog对话框中自动弹出输入法
- android自定义AlertDialog对话框中的EditText无法弹出输入法解决方案
- 安卓使用EditText进入一个新页面时自动获取焦点弹出输入法界面解决办法
- android平板上EditText总是自动弹出输入法问题
- Android AlertDialog有EditText无法弹出输入法的解决
- android中自定义的对话框中的EditText无法弹出输入法解决方案
- android中dialog中的EditText无法弹出输入法对话框
- 打开有EditText的界面不要自动弹出输入法
- 设置EditText自动获取焦点并弹出输入法
- Android 之EditText自动弹出/不弹出输入法
- 进入Activity的时候EditText获取焦点自动弹出输入法的解决办法
- Android的EditText自动获取焦点并弹出输入法问题
- 阻止一进入Activity,editText就获得焦点弹出输入法对话框
- android中自定义的对话框中的EditText无法弹出输入法解决方案
- 屏蔽EditText长按导致的弹出输入法的对话框
- EditText自动获取焦点并弹出输入法的问题
- Android软键盘(输入法)使用大杂烩:避免进入页面EditText自动弹出软键盘-2013.11.08更新
- Android的EditText自动获取焦点并弹出输入法问题
- 对话框中EditText不能弹出输入法
- Android AlertDialog有EditText无法弹出输入法的解决