如何在strings.xml上找到string-array中的变量名

时间:2017-11-07 18:50:24

标签: android kotlin

也许这有点复杂,但我有一个Kotlin Android Studio应用程序,根据车牌的2个字母的字母说明汽车注册的年份和月份。

字母从AA到ZZ(例如:AA,AB,AC ...... AZ,BA,BB ...... ZX ZZ)

我在文件strings.xml中存储了值

示例:

 <string-array name='AP'>
        <item>2005</item>
        <item>9</item>
    </string-array>
    <string-array name='AQ'>
        <item>2005</item>
        <item>9</item>
    </string-array>
    <string-array name='AR'>
        <item>2005</item>
        <item>10</item>
    </string-array>
    <string-array name='AS'>
        <item>2005</item>
        <item>10</item>
    </string-array>
    <string-array name='AT'>
        <item>2005</item>
        <item>10</item>
   </string-array>
    <string-array name='AU'>
        <item>2005</item>
        <item>11</item>
    </string-array>

然后,基于EditText上的用户输入检查字母并在Strings.xml上找到

问题在于我是否

when (x) {
    "AA" -> print("x == 1")
    "AB" -> print("x == 2")
    .....
}

将导致529行代码只是为了检查车牌上的字母......

我的问题是,如果有更好更整洁的方法,就像这样:

 val stringArray = resources.getStringArray(R.array."EditText.getText()")

听起来很复杂......我是Kotlin的初学者

1 个答案:

答案 0 :(得分:0)

字符串数组资源是常量。你不能叫R.array.somevariable。您应该使用XML parser代替。