软键盘弹出和隐藏--
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);就可以解决这个问题。