用于android的阿拉伯字母的keyCodes

时间:2016-11-20 08:17:25

标签: android xml

在android中创建自定义键盘时,包含像这样的keyCodes的xml文件有如下所示:

56代表什么?我在哪里可以获得所有英文和其他语言的所有代码? 如果我想在英文字母旁边的键盘上添加阿拉伯字母怎么办?我没有找到阿拉伯字母的keyCodes。

链接中的示例 https://android.googlesource.com/platform/development/+/master/samples/SoftKeyboard/res/xml/qwerty.xml

4 个答案:

答案 0 :(得分:4)

您可以使用此代码。它包括所有阿拉伯字母。

 <Row>
        <Key android:codes="1590" android:keyEdgeFlags="left" android:keyLabel="ض" />
        <Key android:codes="1589" android:keyLabel="ص" />
        <Key android:codes="1579" android:keyLabel="ث" />
        <Key android:codes="1602" android:keyLabel="ق" />
        <Key android:codes="1601" android:keyLabel="ف" />
        <Key android:codes="1594" android:keyLabel="غ" />
        <Key android:codes="1593" android:keyLabel="ع" />
        <Key android:codes="1607" android:keyLabel="ه" />
        <Key android:codes="1582" android:keyLabel="خ" />
        <Key android:codes="1581" android:keyLabel="ح" />
        <Key android:codes="1580" android:keyEdgeFlags="right" android:keyLabel="ج" />
    </Row>
    <Row>
        <Key android:codes="1588" android:keyEdgeFlags="left" android:keyLabel="ش" />
        <Key android:codes="1587" android:keyLabel="س" />
        <Key android:codes="1610" android:keyLabel="ي" />
        <Key android:codes="1576" android:keyLabel="ب" />
        <Key android:codes="1604" android:keyLabel="ل" />
        <Key android:codes="1575" android:keyLabel="ا" />
        <Key android:codes="1578" android:keyLabel="ت" />
        <Key android:codes="1606" android:keyLabel="ن" />
        <Key android:codes="1605" android:keyLabel="م" />
        <Key android:codes="1603" android:keyLabel="ك" />
        <Key android:codes="1731" android:keyLabel="ۃ" />
    </Row>
    <Row android:keyWidth="8.800006%p">
        <Key android:codes="1569" android:keyLabel="ء" />
        <Key android:codes="1592" android:keyLabel="ظ" />
        <Key android:codes="1591" android:keyLabel="ط" />
        <Key android:codes="1586" android:keyLabel="ز" />
        <Key android:codes="1583" android:keyLabel="د" />
        <Key android:codes="1584" android:keyLabel="ذ" />
        <Key android:codes="1585" android:keyLabel="ر" />
        <Key android:codes="1608" android:keyLabel="و" />
        <Key android:codes="8216" android:keyLabel="‘" />
        <Key android:keyWidth="12.0%p" android:codes="-5" android:keyEdgeFlags="right" android:isModifier="true" android:isRepeatable="true" android:keyIcon="@drawable/btn_back" />
    </Row>

答案 1 :(得分:2)

在您的示例链接中,这些整数代码与标准十进制ascii代码相关。例如56是“8”carachter。您可以在此link中找到此代码和符号。但在标准的ascii中,你无法找到阿拉伯语符号或其他语言,如波斯语和....你必须使用utf-8标准。使用utf8使用此link

答案 2 :(得分:0)

您可以像这样使用自定义

<Key android:codes="0x0641" android:keyLabel="\u0641"/>

或者直接像这样十六进制

<Key android:codes="1571,1573" android:keyLabel="إ أ"/>

或使用任何转换器从十六进制到十进制进行计算,并像这样对同一个进行多个运算

<Keyboard xmlns:android="http://schemas.android.com/apk/res/android"...

请确保您使用的键盘的首字母大写K不小

housing["median_house_value"] > quantile

我尝试了很多解决方案,花了很多时间,但是由于那个愚蠢的错误而没有奏效

答案 3 :(得分:0)

这是qwerty.xml,在res文件夹中创建一个名为XML的文件夹,然后添加qwerty.xml键盘布局:

<Keyboard xmlns:android="http://schemas.android.com/apk/res/android"
android:keyWidth="10%p"
android:horizontalGap="0px"
android:verticalGap="0px"   
android:keyHeight="60dp"
android:id="@+id/ArabicKeyboard"

>
<Row>
    <Key android:codes="1590" android:keyEdgeFlags="left" android:keyLabel="ض" />
    <Key android:codes="1589" android:keyLabel="ص" />
    <Key android:codes="1579" android:keyLabel="ث" />
    <Key android:codes="1602" android:keyLabel="ق" />
    <Key android:codes="1601" android:keyLabel="ف" />
    <Key android:codes="1594" android:keyLabel="غ" />
    <Key android:codes="1593" android:keyLabel="ع" />
    <Key android:codes="1607" android:keyLabel="ه" />
    <Key android:codes="1582" android:keyLabel="خ" />
    <Key android:codes="1581" android:keyLabel="ح" />
    <Key android:codes="1580" android:keyEdgeFlags="right" android:keyLabel="ج" />
</Row>

    <Row>
        <Key android:codes="1588" android:keyEdgeFlags="left" android:keyLabel="ش" />
        <Key android:codes="1587" android:keyLabel="س" />
        <Key android:codes="1610" android:keyLabel="ي" />
        <Key android:codes="1576" android:keyLabel="ب" />
        <Key android:codes="1604" android:keyLabel="ل" />
        <Key android:codes="1575" android:keyLabel="ا" />
        <Key android:codes="1578" android:keyLabel="ت" />
        <Key android:codes="1606" android:keyLabel="ن" />
        <Key android:codes="1605" android:keyLabel="م" />
        <Key android:codes="1603" android:keyLabel="ك" />
        <Key android:codes="1731" android:keyLabel="ۃ" android:keyEdgeFlags="right"/>
    </Row>

    <Row>
        <Key android:codes="-1" android:keyLabel="CHANGE" android:keyWidth="20%p" android:keyEdgeFlags="left"/>
        <Key android:codes="1569" android:keyLabel="ء" />
        <Key android:codes="1592" android:keyLabel="ظ" />
        <Key android:codes="1591" android:keyLabel="ط" />
        <Key android:codes="1586" android:keyLabel="ز" />
        <Key android:codes="1583" android:keyLabel="د" />
        <Key android:codes="1584" android:keyLabel="ذ" />
        <Key android:codes="1585" android:keyLabel="ر" />
        <Key android:codes="1608" android:keyLabel="و" android:keyEdgeFlags="right"/>


    </Row>


<Row android:rowEdgeFlags="bottom">
    <Key android:codes="1609" android:keyLabel="ى" android:keyWidth="10%p"  android:keyEdgeFlags="left"/>
    <Key android:codes="47" android:keyLabel="/" android:keyWidth="10%p" />
    <Key android:codes="32" android:keyLabel="SPACE" android:keyWidth="60%p" android:isRepeatable="true"/>
    <Key android:codes="-5" android:keyLabel="DEL" android:keyWidth="20%p" android:isRepeatable="true" android:keyEdgeFlags="right"/>

</Row> </Keyboard>