在开发过程中,有时候我们会控制输入弹出对视觉(Activity)的效果。这时候不可避免的会在AndroidManifest中对windowSoftInputMode进行设置形如:
android:windowSoftInputMode="state...|adjust.."
或者使用下面的代码动态设置:
WindowManager.LayoutParams params = activity.getWindow().getAttributes();
/**
* 键盘弹出模式:WindowManager.LayoutParams的参数有:
* 可见状态: SOFT_INPUT_STATE_UNSPECIFIED,
* SOFT_INPUT_STATE_UNCHANGED, SOFT_INPUT_STATE_HIDDEN,
* SOFT_INPUT_STATE_ALWAYS_VISIBLE, SOFT_INPUT_STATE_VISIBLE.
*
* 适配选项有: SOFT_INPUT_ADJUST_UNSPECIFIED,
* SOFT_INPUT_ADJUST_RESIZE, SOFT_INPUT_ADJUST_PAN.
*/
params.softInputMode = softInputMode;
activity.getWindow().setAttributes(params);
//也可以这样直接设置
getWindow().setSoftInputMode(softInputMode);