我正在修改 Android sdk 中的示例软键盘应用程序。我注意到即使我触摸字母键下方的位置,字母键似乎也会被击中。更具体地说,如果我触摸“A”键的顶部边界附近,那么键盘实际上会记录“Q”。似乎每个键的边界矩形都延伸到其下方的空白空间,有时甚至拥有下方键的某些顶部部分。
此外,我尝试修改底行的布局,使空格键更大,如下所示。然而,一旦我这样做,空格键右侧的一部分在我触摸时就不会注册。该区域似乎占据了宽度的 10%。我有什么想法可以调试这些问题吗?
<Row android:rowEdgeFlags="bottom">
<Key android:codes="-2" android:keyLabel="123" android:keyWidth="15%p" android:keyEdgeFlags="left"/>
<Key android:codes="32" android:keyWidth="55%p" android:isRepeatable="true"/>
<Key android:codes="46" android:keyLabel="." android:keyWidth="10%p"/>
<Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return"
android:keyWidth="20%p" android:keyEdgeFlags="right"/>
</Row>
最佳答案
找到了上述空格键部分的答案: android custom keyboard: touch area of space key not completely covered
至于垂直校正,@ChrisStratton 是正确的。我调查了一下,我所要做的就是将 android:verticalCorrection="0dp"
添加到 res\layout\input.xml
并且按键开始正确击中。
关于android 软键盘按键无法正确点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29665433/