标签:android android-softkeyboard
我刚刚在eclipse中导入了sdk软键盘(来自API版本16的示例代码,但也尝试了早期版本)并将其安装在我的设备上(Galaxy Note 10.1,Galaxy S2和Galaxy Nexus).
经过一些测试后,我注意到一个奇怪的行为:当我敲击顶部的一个键时,键盘会向我显示该字母的建议,该字母位于我真正按下的字母上方.
对于我目前的研究,我需要实现一个软键盘并添加一些功能.但是对于这些功能,我需要一个精确的键盘.
你能否确认行为并给我任何建议如何解决?
非常感谢你提前.
解决方法:
经过几个小时的搜索,我终于找到了解决问题的方法.
android示例键盘使用从KeyboardView继承的KeyboardViewStyle
在android源代码中,我找到了Widget.KeyboardView的定义
<style name="Widget.KeyboardView" parent="android:Widget">
<item name="android:background">@android:drawable/keyboard_background</item>
<item name="android:keyBackground">@android:drawable/btn_keyboard_key</item>
<item name="android:keyTextSize">22sp</item>
<item name="android:keyTextColor">#FFFFFFFF</item>
<item name="android:keyPreviewLayout">@android:layout/keyboard_key_preview</item>
<item name="android:keyPreviewOffset">-12dip</item>
<item name="android:keyPreviewHeight">80dip</item>
<item name="android:labelTextSize">14sp</item>
<item name="android:popupLayout">@android:layout/keyboard_popup_keyboard</item>
<item name="android:verticalCorrection">-10dip</item>
<item name="android:shadowColor">#BB000000</item>
<item name="android:shadowRadius">2.75</item>
</style>
在那里我注意到以下行:
<item name="android:verticalCorrection">-10dip</item>
为了解决我的问题,我定义了自己的样式,它继承自Widget.KeyboardView并用以下方式覆盖android:verticalCorrection:
<style name="Widget.MyKeyboardView" parent="android:Widget.KeyboardView">
<item name="android:verticalCorrection">0dip</item>
</style>
最后我将风格应用到键盘上.
etvoilà:)
标签:android,android-softkeyboard 来源: https://codeday.me/bug/20190901/1784381.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。