android中软键盘上大写字母的键码

时间:2012-12-12 15:17:57

标签: android android-layout

我正在做一个实验,它需要一个键盘同时显示大写和小写字母 (按下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>

这些都是小写字母。问题是如何显示大写的。是否有大写的code-keyLabel值,或者是否有其他方法在键盘中包含大写字母?

1 个答案:

答案 0 :(得分:2)

结果是一个字母的大写和小写的代码是相同的。当用户按下软键盘中的字母键时,输出将取决于键盘视图的移位状态,可以使用KeyboardView.setShifted(boolean)进行更改。

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