输入文本时下边的布局自动上升到输入法上边

近期看到很多应用在edittext输入文字时,下方的按钮跟布局会自动提升到输入法的上边,在软键盘输入完成隐藏后又会回去,这样提高了用户的使用体验度,这么实现的呢,可能刚一开始感觉很NB
会很复杂,但是我百度了一下,亲测可用仅需要一行代码即可搞定
在清单文件的想要使用这种方式的activity节点下添加一个属性即可
android:windowSoftInputMode="stateVisible|adjustResize"
原文地址:https://segmentfault.com/q/1010000003803836最主要的是后边的评论
方法一:在你的activity中的oncreate中setContentView之前写上这个代码getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN); (备注:我测试了貌似不管用)
方法二:在项目的AndroidManifest.xml文件中界面对应的<activity>里加入android:windowSoftInputMode="stateVisible|adjustResize",这样会让屏幕整体上移。如果加上的是 android:windowSoftInputMode="adjustPan"这样键盘就会覆盖屏幕。(这个完全ok)
方法三:把顶级的layout替换成ScrollView,或者说在顶级的Layout上面再加一层ScrollView的封装。这样就会把软键盘和输入框一起滚动了,软键盘会一直处于底部。(没试过太复杂)
原文地址:https://www.cnblogs.com/lizhanqi/p/5899302.html