软键盘弹出和隐藏--

Android软键盘弹出时不把布局顶上去的解决方法

<activity android:name=".activity.HomeActivity"   

Android:windowSoftInputMode="adjustPan|stateHidden"/>   //键盘直接覆盖,不让屏幕上移    // 进入默认不弹出键盘,且 底部按钮 不会移动到 键盘头部;

<activity
android:windowSoftInputMode="adjustResize|stateHidden" /> // 进入默认不弹出键盘,且 底部按钮 会 移动到 键盘头部;
<activity

Android:windowSoftInputMode="stateVisible|adjustResize",这样会让屏幕整体上移

 Android:windowSoftInputMode="adjustPan"这样键盘就会覆盖屏幕。


11.解决Activity内控件,当使用软键盘时,会着顶上去的解决方案

我们在开发过程中,经常会使用到布局内输入控件如:EditText等,如果不设置Window参数,EditText下方的控件就会被键盘顶上去。很奇怪,试了N次,才发现,原来Activity的Window属性没设置,导致键盘顶获得焦点以下的控件全部被顶上去。

经过多次试验,得出结论:解决这个问题不外乎两种方法:一是通过配置文件来配,别一种方法则是用代码的方式实现。下面我们来解决。

第一种方法:配置文件更改

在AndroidManifest.xml文件中进行配置属性就可以解决。

<activity android:name=".MainActivity" android:windowSoftInputMode="adjustPan|stateHidden"></activity>

android:windowSoftInputMode实际上是Activity中窗体(Window)的输入模式,其有很详细的解释,相信很多人都可以在很多博客上找得到,为减少文字输入, 

第二种方法:代码实现

就是在Activity.OnCreate方法内输入如下语句:

 this.getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);就可以解决这个问题。



原文地址:https://www.cnblogs.com/awkflf11/p/9845938.html