2012-08-05 5 views
7

Me gustaría mostrar una cadena con el nombre de mi aplicación y su versión actual. El nombre de la aplicación está en hebreo, para algunos cuando combino el texto hebreo con el valor numérico, el valor numérico se invierte.Android cadena hebrea RTL con valor numérico volteado

versionTextView.setText("אפליקציה גרסה "+this.getResources().getString(R.string.app_version)); 

por ejemplo: la versión de la aplicación es 1.0, mostrándose como 0.1 en el emulador.

Respuesta

10

Suena como un error en el algoritmo bidi de Android. Trate de añadir marcas de izquierda a derecha alrededor de los números:

versionTextView.setText("אפליקציה גרסה " 
    + "\u200e" 
    + this.getResources().getString(R.string.app_version) 
    + "\u200e" 
); 

(. Si esto funciona, puede ser capaz de eliminar el segundo)

+0

Gracias, eso funciona pero 'agrega un carácter extraño a la cadena – jkigel

+0

@jkigel - Eso suena un problema de fuente en la parte superior del error del algoritmo bidi. Lo único que puedo sugerir es probar una fuente diferente. Es posible que deba empaquetar su propia fuente con su aplicación para tener control sobre esto. Hay algunas fuentes gratuitas para hebreo. Ezra SIL es una fuente excelente con un aspecto clásico. Puede encontrar muchos otros con una simple búsqueda web. –

+1

Gracias! Voy a intentar eso – jkigel

0

creo que tou necesita labrar la cadena de salida con un CSS usando la etiqueta dir = "RTL" - que arreglará la direccionalidad de sus números y caracteres especiales dentro del hebreo

Cuestiones relacionadas