android 软键盘按键无法正确点击

标签 android android-xml android-softkeyboard android-input-method

我正在修改 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/

相关文章:

具有自定义背景的 Android float 操作按钮

android - 外部化字符串是否需要位于 strings.xml 中?

Android 自定义软键盘 - 更改 KEYCODE_ENTER 行为以跳过非 EditText 对象,如默认软键盘行为

android - 如何通过点击号码从 webviewclient 打开拨号器 Activity ?

android - Unresolved reference : GlideApp in activity written in Kotlin

java - 替换java中的整个字符串

android - 在 Fragment 中选择微调器项目时复选框消失

android - 如何在 ConstraintLayout 中水平放置两个 View ?

android - SearchView setIconified(false) 自动调用搜索 View 的焦点。我怎样才能禁用它?

android - 当键盘启动或方向改变时,如何避免 Android 用户界面发生变化?