我们先回顾一下创建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);
是不是很简单呢?