Android软键盘适配问题
16lz
2021-01-23
记录:在android手机型号很多情况下,软键盘输入的都有兼容性问题以及弹出框有可能出现问题,遇到这样的问题还是需要考虑手机键盘建兼容:参考
if (!UtilsStyle.isHuaWei()) { et_input_art_comm.viewTreeObserver.addOnGlobalLayoutListener { val r = Rect() //获取当前界面可视部分 window.decorView.getWindowVisibleDisplayFrame(r) //获取屏幕的高度 val screenHeight = window.decorView.rootView.height //此处就是用来获取键盘的高度的, 在键盘没有弹出的时候 此高度为0 键盘弹出的时候为一个正数 val heightDifference = screenHeight - r.bottom val layoutParams = RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT) layoutParams.bottomMargin = 10 layoutParams.topMargin=10 ll_input.layoutParams = layoutParams } }} else { if (!UtilsStyle.isHuaWei()) { et_input_art_comm.viewTreeObserver.addOnGlobalLayoutListener { val r = Rect() //获取当前界面可视部分 window.decorView.getWindowVisibleDisplayFrame(r) //获取屏幕的高度 val screenHeight = window.decorView.rootView.height //此处就是用来获取键盘的高度的, 在键盘没有弹出的时候 此高度为0 键盘弹出的时候为一个正数 val heightDifference = screenHeight - r.bottom val layoutParams = RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT) layoutParams.bottomMargin = heightDifference/5 ll_input.layoutParams = layoutParams } }
注意的是:weight属性的优先级要高于LayoutParams设定的值,既然定死了所占比例,当然就无法同时设置其它的尺寸了,不然设置无效的,还有弹出框一定要设置宽高。
更多相关文章
- Android EditText 设置行距不影响光标高度
- Android EditText不弹出软键盘
- 调出软键盘 挤掉标题栏咋办
- Android 软键盘相关辅助类KeyBoardUtils
- android强制弹出键盘
- android监听键盘弹出or隐藏方法
- android显示隐藏软键盘
- android隐藏以及显示软键盘