Android软键盘那点事儿

2019-01-28  本文已影响8人  初心一点

软键盘显示原理

  1. 软件盘的本质是什么?软键盘其实是一个Dialog
  2. InputMethodService为我们的输入法创建了一个Dialog,并且将该Dialog的Window的某些参数(如Gravity)进行了设置,使之能够在底部或者全屏显示。当我们点击输入框时,系统对活动主窗口进行调整,从而为输入法腾出相应的空间,然后将该Dialog显示在底部,或者全屏显示

软键盘显示调整

  1. Android定义了一个属性,名字为windowSoftInputMode, 这个属性用于设置Activity主窗口与软键盘的交互模式,用于避免软键盘遮挡内容的问题。我们可以在AndroidManifet.xml中对Activity进行设置。如:android:windowSoftInputMode=”stateUnchanged|adjustPan”。
    该属性可选的值有两部分
  • 1.1 一部分为软键盘的状态控制,控制软键盘是隐藏还是显示
  • 1.2 另一部分是Activity窗口的调整,以便腾出空间展示软键盘
  1. 很好的几篇文章,可以参考:
上一篇下一篇

猜你喜欢

热点阅读