我已经使用Android键盘类创建了自定义键盘。在Android自定义键盘中设置键盘模式
我想要有两种模式的行。一种是正常模式。一个是当用户按下“Sym”按钮时。对于每个Keyboard.Row在XML中的“Sym”按钮,我已经指定了android:keyboardMode =“@ + id/sym”。
现在,当我运行它只有没有指定android:keyboardMode显示的行。这正如预期的那样以及文档所述。
我的问题是如何在我的代码中设置模式,以便android:keyboardMode =“@ + id/sym”的行得到渲染?
<Row>
<Key android:codes="113" android:keyLabel="q" />
<Key android:codes="119" android:keyLabel="w" />
<Key android:codes="101" android:keyLabel="e" />
<Key android:codes="114" android:keyLabel="r" />
<Key android:codes="116" android:keyLabel="t" />
<Key android:codes="121" android:keyLabel="y" />
<Key android:codes="117" android:keyLabel="u" />
<Key android:codes="105" android:keyLabel="i" />
<Key android:codes="111" android:keyLabel="o" />
<Key android:codes="112" android:keyLabel="p" />
<Key android:codes="-5" android:keyIcon="@drawable/keyboard_backspace_icon" android:keyWidth="91dp" />
</Row>
<Row android:keyboardMode="@+id/sym">
<Key android:codes="113" android:keyLabel="+" />
<Key android:codes="119" android:keyLabel="_" />
<Key android:codes="101" android:keyLabel="=" />
<Key android:codes="114" android:keyLabel="%" />
<Key android:codes="116" android:keyLabel="^" />
<Key android:codes="121" android:keyLabel="|" />
<Key android:codes="117" android:keyLabel="<" />
<Key android:codes="105" android:keyLabel=">" />
<Key android:codes="111" android:keyLabel="[" />
<Key android:codes="112" android:keyLabel="]" />
<Key android:codes="-5" android:keyIcon="@drawable/keyboard_backspace_icon" android:keyWidth="91dp" />
</Row>
是否有一个关键代码来触发KEYCODE_MODE_CHANGE?我无法找到它。 – 2017-09-14 17:50:30