Android 软键盘 - 键盘顶部边缘的按键预览弹出窗口被阻止/切断?

Phi*_*sey 5 keyboard android key popup preview

我正在使用键盘,现在专注于按键预览。我正在使用一个drawable,

<?xml version="1.0" encoding="utf-8"?>
Run Code Online (Sandbox Code Playgroud)

<item>
    <shape>
        <padding android:top="10sp" android:right="10sp" android:bottom="5sp" android:left="10sp" />
        <solid android:color="#00000000" />
    </shape>
</item>
<item>
    <shape>
        <padding android:top="0sp" android:right="0sp" android:bottom="1sp" android:left="0sp" />
        <solid android:color="#d4d4d4" />
        <corners android:radius="4sp" />
    </shape>
</item>
<item>
    <shape>
        <padding android:top="0sp" android:right="0sp" android:bottom="1sp" android:left="0sp" />
        <solid android:color="#dddddd" />
        <corners android:radius="4sp" />
    </shape>
</item>
<item>
    <shape >
        <solid android:color="#FFD1D6D9" />
        <corners android:radius="4sp" />
    </shape>
</item>
Run Code Online (Sandbox Code Playgroud)

并尝试设置,

android:clipChildren="false"
android:clipToPadding="false"
Run Code Online (Sandbox Code Playgroud)

在键盘 XML 文件上。我正在寻找与 GBoard 的弹出窗口类似的行为,其中可绘制对象在每个元素上弹出。底行工作得很好;中间一行将弹出窗口向下推一点(看起来它总是将键预览弹出窗口的顶部边缘设置为键盘顶部,如果它超过它),并且顶行实际上根本不显示任何内容。我忘记了设置还是 Android 不会让我正确执行此操作?您认为 Google 在 GBBoard 中是如何做到的?