很多人都有碰到有输入框时,软键盘弹出要么界面变形,要么键盘把输入框遮挡掉,要解决这个问题,只需在Menifest中,给相应的activity设置android:windowSoftInputMode="adjustPan"即可。
activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性。
这个属性能影响两件事情:
【一】当有焦点产生时,软键盘是隐藏还是显示;
【二】是否减少活动主窗口大小以便腾出空间放软键盘。
windowSoftInputMode还有其他值,其含义如下:
1)stateUnspecified:软键盘的状态并没有指定,系统将选择一个合适的状态或依赖于主题的设置
2)stateUnchanged:当这个activity出现时,软键盘将一直保持在上一个activity里的状态,无论是隐藏还是显示
3)stateHidden:用户选择activity时,软键盘总是被隐藏
4)stateAlwaysHidden:当该Activity主窗口获取焦点时,软键盘也总是被隐藏的
5)stateVisible:软键盘通常是可见的
6)stateAlwaysVisible:用户选择activity时,软键盘总是显示的状态
7)adjustUnspecified:默认设置,通常由系统自行决定是隐藏还是显示
8)adjustResize:该Activity总是调整屏幕的大小以便留出软键盘的空间
9)adjustPan:当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分