如何在弹出键盘中禁用键预览(不在主软键盘布局中)?

时间:2015-06-10 12:55:22

标签: android android-softkeyboard soft-keyboard keypreview

禁用关键预览很容易:只需调用setPreviewEnabled(false),这些烦人的微小预览就不会再出现了。但是如果我将弹出键盘附加到任何键上,那么这些预览将显示在弹出窗口中:

qwerty.xml:

<Key android:codes="101" 
    android:keyLabel="E" 
    android:popupKeyboard="@xml/popup"
   android:keyTextSize="60sp"/>

popup.xml:

<Row>
    <Key android:codes="-10000"
        android:keyLabel="test"
        android:keyOutputText="test"/>
</Row>
<Row>
    <Key android:codes="-10001"
        android:keyLabel="test2"
        android:keyOutputText="test2"/>
</Row>

无法发布图片,但如果我长按“E”字母,然后按test或test2按钮,则会显示白键预览。

有没有办法禁用这些关键预览呢?

5 个答案:

答案 0 :(得分:3)

使用setPreviewEnabled(false)创建CustomKeyboard 在popup.xml中的CustomeKeyboard中添加行,如下所示

<CustomKeyboard 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:keyWidth="10%p"
        android:horizontalGap="0px"
        android:verticalGap="0px"
        android:keyHeight="60px" >
        <Row><Key android:codes="-10000"
            android:keyLabel="test"
            android:keyOutputText="test"/> </Row> 
        <Row><Key android:codes="-10001"
            android:keyLabel="test2"
            android:keyOutputText="test2"/></Row>
</CustomKeyboard>

答案 1 :(得分:3)

在弹出式布局中设置此属性:

android:keyPreviewLayout="0"

android:keyPreviewLayout="@null"

答案 2 :(得分:2)

也为弹出式键盘视图调用setPreviewEnabled(false)

// Find popup keyboard by its view-id
pKeyboardView
android.inputmethodservice.KeyboardView = (KeyboardView)mHostActivity.findViewById(viewid);

// Disable key-previews for the popup keyboard too
pKeyboardView.setPreviewEnabled(false); 

答案 3 :(得分:1)

在您的keyboardView中使用

设置弹出窗口的布局
android:popupLayout=""

在弹出式布局中设置此属性:

android:keyPreviewLayout="@null"

答案 4 :(得分:0)

1)您需要将popupLayout设置为当前弹出布局this

2)在你的popupLayout中设置android:keyPreviewLayout =“@ null”这将在弹出窗口中隐藏你的预览

了解更多说明check