2017-11-07 19 views
0

これはちょっと複雑ですが、私は車が2文字の文字に基づいて登録された年と月を示すKotlin Android Studioアプリを持っていますナンバープレート。strings.xmlのstring-arrayから変数名を見つける方法

文字はZZにAA(例:AA、AB、AC ... AZ、BA、BB ... ZX ZZ)行き

を、私は、ファイル内の

を格納されている値をのstrings.xmlています

例:のEditTextのユーザー入力に基づいて、次に

<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> 

は、私が

を行う場合である文字をチェックし、のstrings.xml

問題に見つけました

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

は...コードの529行だけのナンバープレートの文字を確認することになる

このように、これを行うためのより良いと整然と方法があれば私の質問は:

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

は複雑に聞こえる...と私は

+0

これらの文字列配列をJSON形式で格納します。パースや軽量化がより簡単になります。 – XoXo

+0

値はリソースとして保存する必要がありますか? – nPn

+0

何度も試してみましたが、JSONは実装するにはあまりにも複雑です...ちょうど配列にcaseを使用しました。 –

答えて

0

文字列配列の資源は定数であるKotlinで初心者です。 R.array.somevariableを呼び出すことはできません。代わりにXML parserを使用してください。

関連する問題