Search code examples
androidxmlkeyboardkeykeycode

Android KeyCode Capital Letter?


I'm making a soft-keyboard using XML Keyboard like this :

<Keyboard xmlns:android="http://schemas.android.com/apk/res/android"
    android:keyWidth="11.11%p" android:horizontalGap="0px"
    android:verticalGap="0px" android:keyHeight="54dip">

        <Row>
        <Key android:codes="38" android:keyIcon="@drawable/icon_ja"
            android:iconPreview="@drawable/iconprev_ja"
            android:keyEdgeFlags="left" />
        <Key android:codes="42" android:keyIcon="@drawable/icon_nya"
            android:iconPreview="@drawable/iconprev_nya"/>
        <Key android:codes="53" android:keyIcon="@drawable/icon_ya"
            android:iconPreview="@drawable/iconprev_ya"/>
        <Key android:codes="46" android:keyIcon="@drawable/icon_ra"
            android:iconPreview="@drawable/iconprev_ra"/>
        <Key android:codes="40" android:keyIcon="@drawable/icon_la"
            android:iconPreview="@drawable/iconprev_la"/>
        <Key android:codes="51" android:keyIcon="@drawable/icon_wa"
            android:iconPreview="@drawable/iconprev_wa"/>
        <Key android:codes="47" android:keyIcon="@drawable/icon_sa"
            android:iconPreview="@drawable/iconprev_sa"/>
        <Key android:codes="29" android:keyIcon="@drawable/icon_a"
            android:iconPreview="@drawable/iconprev_a"/>
        <Key android:codes="36" android:keyIcon="@drawable/icon_ha"
            android:iconPreview="@drawable/iconprev_ha" />

    </Row>
</Keyboard>

android:codes produces lowercase letters (not capital letters). And http://developer.android.com/reference/android/view/KeyEvent.html does not provide a list of capital letters. How do I fix that?


Solution

  • You probably have to use one of the modifier keys: KEYCODE_SHIFT_LEFT, KEYCODE_SHIFT_RIGHT, or KEYCODE_CAPS_LOCK.

    EDIT: You could use android:keyOutputText instead of android:codes. There you can define any string you wish to output (doesn't even have to be a character).