2

我正在做一个实验,它需要一个同时显示大写和小写字母的键盘按 shift 后不显示大写)。现在,我使用 SDK 中的示例项目设法像普通键盘一样显示小写字母。该项目使用代码标签映射xml来定义键盘的布局,如下所示:

<Row>
    <Key android:codes="113" android:keyLabel="q" android:keyEdgeFlags="left"/>
    <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" android:keyEdgeFlags="right"/>
</Row>

这些都是小写字母。问题是如何显示大写字母。是否有大写的代码键标签值,或者有没有其他方法可以在键盘中包含大写字母?

4

1 回答 1

3

原来字母的大写和小写的代码是相同的。当用户在软键盘中按下字母键时,输出将取决于键盘视图的切换状态,可以使用KeyboardView.setShifted(boolean).

另一件事是视图中的键应该具有相同的移位状态,因此不可能在一个视图中同时显示相同字母的大写和小写。但它可以在两种不同的视图中完成,一组是移位的,另一组是未移位的。

于 2012-12-20T01:44:46.890 回答