Android KeyBoard.Key 禁用特殊键的 iconPreview?

标签 android keyboard preview android-softkeyboard

我通过实现 KeyboardView.OnKeyboardActionListener 接口(interface)来自定义我自己的软键盘。

当按键被按下时,它会显示一个预览弹出窗口。

我的问题是如何禁用 SHIFT 和 DELETE 等特殊键的预览弹出窗口?

我曾尝试将 android:iconPreview 属性设置为 null,但没有成功。

<Key
    android:codes="-1"
    android:keyIcon="@drawable/key_shift" 
    android:keyWidth="15%p"
    android:isModifier="true"
    android:isSticky="true"
    android:keyEdgeFlags="left" />

有什么想法吗?

提前致谢!

最佳答案

首先你必须实现OnKeyboardActionListener

然后像这样使用 onPress() 和 onRelease() 来控制预览弹出窗口:

public void onPress(int primaryCode) {
    if (primaryCode==-2||primaryCode==-5||primaryCode==-4){
        mInputView.setPreviewEnabled(false);
    }
}

public void onRelease(int primaryCode) {
    mInputView.setPreviewEnabled(true);
}

关于Android KeyBoard.Key 禁用特殊键的 iconPreview?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8180942/

相关文章:

keyboard - 如何设置 vim 以根据 CAPS LOCK 是否打开自动更改我的背景颜色?

ios - 使用swift在UITableView中有UITextFields时如何管理键盘?

php - HTML, CSS - 我想创建一个按钮 "Preview",它将向用户显示他的输入

image - 如何设置将在 Facebook 上显示为预览的网站图像?

java - Android(Java) 从 Netty Nio 服务器读取时套接字读取挂起

javascript - HTML5 持久跟踪地理位置

android - 以编程方式访问库中的音乐文件 (Android)

java - 从 Android SDK 模拟器的外部存储读取文件

android - Unity Android 键盘文本在白色背景上显示白色文本

delphi - Delphi 10.3 中带预览的文件打开对话框