android 软键盘弹出 布局上移动

这是软件盘和actiivty主窗口抢空间造成的,需在AndroidManifest.xml里为activity配置windowSoftInputMode属性并为其选择属性值。

如下:

    android:name="...Activity"
    android:screenOrientation="portrait"
    android:windowSoftInputMode="adjustPan|stateHidden"/>

 
  

解决!!!

对于windowSoftInputMode属性,分析一下:

这个属性能影响两件事情:

1:当活动主窗口有焦点产生时,软键盘是隐藏还是显示

2:是否减少活动主窗口大小以便腾出空间放软键盘

它的设置必须时下面的一个值或者是一个组合值"state..."和“adjust..”

各值的含义:

1,stateUnspecified:软件盘的状态没有制定,系统将选择一个合适的状态或依赖于主题的设置

2.stateUnchanged:当这个activity出现时,软键盘将一直保持在上一个activity里的状态,无论是隐藏还是显示

3.stateHidden:用户选择activity时,软键盘总是被隐藏

4.stateAlwaysHidden:当该Activity主窗口获取焦点时,软键盘也总是被隐藏的

5.stateVisible:软键盘通常是可见的

6.stateAlwaysVisible:用户选择activity时,软键盘总是显示的状态

7.adjustUnspecified:默认设置,通常由系统自行决定是隐藏还是显示

8.adjustResize:该Activity总是调整屏幕的大小以便留出软键盘的空间

9adjustPan:当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分

你可能感兴趣的:(android)