问题是Activity中使用了ImmersionBar,布局为ScrollBar中嵌套了几个EditText,当点击布局偏下的EditText后,页面不随软键盘弹起,即EditText被软键盘挡住,设置了adjustReize无用。
Google后发现普遍存在这个问题,于是在Stack Overflow上找到了一个解决办法。
github地址为:https://github.com/madebycm/AndroidBug5497Workaround
但是使用完该工具类之后,发现软键盘弹起会伴随一个灰色的View,悬浮在软键盘的上方,之后发现是AndroidBug5497Workaround兼容性的问题
解决办法为:http://www.jianshu.com/p/a95a1b84da11
最终解决办法,将AndroidBug5497Workaround复制到自己项目中,然后参考上一条链接,将工具类进行修改,修改完成后在Activity中调用AndroidBug5497Workaround.assistActivity(this)方法,即可解决。
注意,该方法需要在setContentView方法后调用。
PS:造成这个的原因似乎是在style/v21中设置了状态栏透明,貌似ImmersionBar中用到了这一条,所以会造成这个原因,源码下次再去细看。
我只是个代码搬运工~~