2024年6月11日发(作者:)

问题? 一开始oncreate进入某个含有EditText的View,软键盘就显示出来了,

交互很不好,还没需要它就出来了,解决的思路方法有两个:

1,一个view焦点的设置是顺序在布局文件是从上到下,所以只在要EditText上加一

个可聚焦的控件,然后每次oncreate后展现时,焦点就不在EditText上了,而是在它上

面的控件:

android:layout_width="0px" android:layout_height="0px"/>

下面为你自己的EditText控件

2,更改系统的输入模式系统自带短信界面可以完全漂浮在软键盘之上,看了一下短信

源码,修改一下输入模式就可以了,源码如下

代码方式:

getWindow().setSoftInputMode(_INPUT

_ADJUST_RESIZE |

_INPUT_STATE_HIDDEN);

上面的那个字段是让,edittext默认不显示软键盘,只有edittext被点击时,软键盘

才弹出

也可以简单点:

getWindow().setSoftInputMode(_INPUT

_ADJUST_PAN);

xml方式:

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;