android:windowSoftInputMode 主要是用来设置软键盘与页面进行交互的模式。

(用法有很多种)
android:windowSoftInputMode 的属性

????state相关属性:

  • 1.【stateVisiable—可见状态】:无论从哪个页面跳转到该Activity页面 软键盘总是处于可见状态,即使没有输入框的情况下也能够强制的弹出。

  • 2.【stateAlwaysVisible—总是可见状态】: 无论从哪个页面跳转到该(AActivity)页面 软键盘总是处于可见状态,与stateVisiable状态不同的是:如果我们跳转的页面的软键盘是隐藏的(BActivity)当我们返回到(AActivity)软键盘就会显示出来。

  • 3.【stateHidden—隐藏状态】:软键盘总是不可见的 无论是否有输入的需要,从当前页面(AActivity)跳转到下一个页面(BActivity)如果在(BActivity)的软键盘开启的情况下返回到上一个页面(AActivity),此时(AActivity)仍然显示软键盘不会将其隐藏。

  • 4.【stateAlwaysHidden—总是隐藏状态】: 软键盘是不可见的 无论是否有输入的需要,与stateHidden不同的时,如果从下个开启的页面(BActivity)并且软键盘是弹出的,返回到上个页面(AActivity)此时(AActivity)会将软键盘隐藏。

  • 5.【stateUnchanged—不改变状态】: 当前页面软键盘的显示状态取决于上一个页面的软键盘的状态。如果上一个页面(BActivity)处于显示状态则当前页面(AActivity)也处于显示状态。

  • 6.【stateUnspecified—未指定状态】:系统会默认采用这个(windowSoftInputMode)属性,根据界面采取相应的软键盘的显示模式。

????adjust相关属性:

  • 1.【adjustPan】: 通过当前窗口中布局的自动移动以确保焦点位置以及输入框总在用户可以看得到的部位。

  • 2.【adjustResize】:该Activity总是调整屏幕的大小以便留出软键盘的空间。

  • 3.【adjustUnspecified】:默认设置,由系统根据不同的界面选择不同的模式。

相关文章: