android 中解决输入法挡住输入框的问题
大伙儿在合理布局情况下,有时会发觉文本框被遮挡一部分,能彻底表明出去,可是系统软件内置短消息页面
能够彻底飘浮在软键盘以上,看过一下短消息源代码,改动一下键入方式就可以了,源代码以下
编码方法:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE |
WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
还可以通俗一点:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
xml方法:
<activity android:name=”.Activity.MainActivity” android:label=”@string/app_name” android:windowSoftInputMode=”stateHidden” android:screenOrientation=”portrait” android:configChanges=”keyboardHidden|orientation”
/>
软电脑输入法方式选择项:
public int softInputMode;
下列选择项与电脑输入法方式相关:
软键入地区是不是由此可见。
public static final int SOFT_INPUT_MASK_STATE = 0x0f;
未指定情况。
public static final int SOFT_INPUT_STATE_UNSPECIFIED = 0;
不必改动软电脑输入法地区的情况。
public static final int SOFT_INPUT_STATE_UNCHANGED = 1;
掩藏电脑输入法地区(当客户进到对话框时)。
public static final int SOFT_INPUT_STATE_HIDDEN = 2;
当对话框得到聚焦点时,掩藏电脑输入法地区。
public static final int SOFT_INPUT_STATE_ALWAYS_HIDDEN = 3;
表明电脑输入法地区(当客户进到对话框时)。
public static final int SOFT_INPUT_STATE_VISIBLE = 4;
当对话框得到聚焦点时,表明电脑输入法地区。
public static final int SOFT_INPUT_STATE_ALWAYS_VISIBLE = 5;
对话框理应积极调节,以融入软键入对话框。
public static final int SOFT_INPUT_MASK_ADJUST = 0xf0;
未指定情况,系统软件将依据对话框內容试着挑选一个电脑输入法款式。
public static final int SOFT_INPUT_ADJUST_UNSPECIFIED = 0x00;
当电脑输入法表明时,容许对话框再次测算规格,使內容不被电脑输入法所遮盖。
不能与SOFT_INPUT_ADJUSP_PAN混和应用;假如2个也没有设定,系统软件将依据对话框內容全自动设定一个选择项。
public static final int SOFT_INPUT_ADJUST_RESIZE = 0x10;
电脑输入法表明时平移变换对话框。它不用解决规格转变 ,架构可以挪动对话框以保证键入聚焦点由此可见。
不能与SOFT_INPUT_ADJUST_RESIZE混和应用;假如2个也没有设定,系统软件将依据对话框內容全自动设定一个选择项。
public static final int SOFT_INPUT_ADJUST_PAN = 0x20;
当客户转到此对话框时,由系统软件全自动设定,因此 你不要设定它。
当对话框表明以后该标示全自动消除。
public static final int SOFT_INPUT_IS_FORWARD_NAVIGATION = 0x100;
之上的选择项总有一个能够处理你的问题:
下边的这一配备能够处理我的页面上嵌入了各种各样合理布局的状况下的遮盖难题
<activity android:name=”.Activity.MainActivity” android:label=”@string/app_name” android:windowSoftInputMode=”adjustPan”android:screenOrientation=”portrait” />