2013-03-20 3 views
6

Ho un'app Android in più lingue. Se ho una cartella denominata: valori-it Non ho errori e tutto funziona correttamente.Nome directory risorse non valido per i valori con codice paese

Se cambio titolo il nome della directory a valori-it ho ottenuto questo errore: android-apt-compiler: [NAMEOFAPP] invalid resource directory name: [path]\res/values-en_GB

Perchè questo non è valido? o che cosa devo fare per avere per stessa lingua (in questo esempio en) diversi valori dipendono dalla posizione (in questo esempio Stati Uniti o GB)

Sto usando Idea 12, Java 1.7, Android 4.2

risposta

16

Il il formato della tua directory non è corretto. Vedere: Documentation

Usa:

res/values-en-rGB 

In sostanza:

The language is defined by a two-letter ISO 639-1 language code, optionally followed by a two letter ISO 3166-1-alpha-2 region code (preceded by lowercase "r").

The codes are not case-sensitive; the r prefix is used to distinguish the region portion. You cannot specify a region alone.

+0

Grazie. Ora sta funzionando. Sto avendo un altro problema con la lingua serba perché voglio 2 versioni per serbo: cirillico e latino. Pensi che sia possibile? Provo qualcosa del genere: value-sr-rRS-Latn ma non funziona. Grazie –

+0

@DaniDudas Non penso che lo sia, mi dispiace. – Tushar

+0

incredibilmente, 'r' non era obbligatorio nel gradle 1.0.0, ma è in gradle 1.3.1 – njzk2