今天在调一个直播页面时, 碰到个问题:键盘弹起时,输入框被挡,且其它view被顶上去.
调了好久, 无法解决. 而其它页面则正常.
查了资料, 终于找到问题所在. 由于直播页面, 设置了全屏模式. 在此模式下, adjustResize不起效果. 所以会出现问题.
把全屏模式功能取消, 则 正常. ------------------------暂时解决 .
ps: 但是我们直播页面, 又要求需要全屏展示, 暂时还没找到方法 . 如果有大神知道方案, 请在评论中指教下. 如果没碰到过, 也可以探讨下.
已解决:
上述bug是android系统存在的问题, 全屏模式下, adjustResize失效. 此时可对输入框进行监控.
在oncreate设置代码或者style样式. 设置该activity全屏. 如:getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN); // 全屏
在edittext隐藏示前, 启用全屏模式,
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
Utility.hideSoftInput(QavAvActivity.this);
layBottom.setVisibility(View.GONE);
在edittext显示前, 取消全屏模式
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
Utility.showSoftInput(QavAvActivity.this);
chatEditView.requestFocus();
layBottom.setVisibility(View.VISIBLE);