我是靠谱客的博主 执着眼神,最近开发中收集的这篇文章主要介绍windowSoftInputMode的adjustPan无效问题研究windowSoftInputMode的adjustPan无效问题研究,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
windowSoftInputMode的adjustPan无效问题研究
问题
最近在修改原生Launcher3的遇到一个问题,项目要求修改桌面文件夹时,弹出输入法会挡住输入框,所以要求输入框也随着输入法一起往上移.其实原生的Launcher3是做了适配加了android:windowSoftInputMode="adjustPan"
属性的,可惜使用时发现只有前一两次呼出输入法时,输入框才会一起上移,后面就不行了,需要进入其他应用返回后才恢复.就像这样:
环境
Android 4.4
原因
找了很久,几经各种注释排除发现原来和EditText的属性值有关.
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
android:gravity="center_horizontal"
android:singleLine="true"
/>
发现singleLine
属性和gravity
属性在一起用的时候,就有可能出现上述问题,然而也不是必然会出现,测试了left和center_vertical都是没有问题的,但是center_horizontal,center,right都存在问题.
解决办法
singleLine
属性是已经被谷歌遗弃的属性,把singleLine=”true”换成maxLines=”1”,问题便解决了.
注意
- 在自己Android 7.0的手机上发现,用singleLine属性也并没有这个问题,或许以上问题只有在Android4.4及以前才会出现.
总结
- Google弃用一些属性的时候,总会有原因的,这次的问题说明,应当尽量使用新方法是替代被摒弃的方法,或者了解清楚方法为何被摈弃的原因.
最后
以上就是执着眼神为你收集整理的windowSoftInputMode的adjustPan无效问题研究windowSoftInputMode的adjustPan无效问题研究的全部内容,希望文章能够帮你解决windowSoftInputMode的adjustPan无效问题研究windowSoftInputMode的adjustPan无效问题研究所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复