2012-02-20 7 views
24

¿Hay alguna manera de suprimir las advertencias individuales sobre las cadenas codificadas en los archivos de diseño?¿alguna forma de suprimir las advertencias sobre "cadenas codificadas" en archivos de diseño?

A menudo pongo texto de marcador de posición en TextViews para que pueda verlos en el diseño en el momento del diseño. La desventaja de esto es obtener un montón de estas advertencias sobre cadenas codificadas. Pero sin ellos no vería los TextViews en absoluto en el diseño.

+0

obtengo el principio de utilizar 'cadenas.xml', pero a veces hay casos en los que sabe que solo está utilizando la cadena una vez .. – Jacksonkr

+1

Buena pregunta. Parece que sería bueno tener algún tipo de personaje (s) de escape para permitir el texto como marcador de posición, p. "" – Daniel

Respuesta

14

En Eclipse, vaya a Ventana-> Preferencias-> Android-> Comprobación de error de pelusa.

Desplácese hasta y seleccione Texto codificado (en Internacionalización). En el cuadro desplegable Gravedad, seleccione Ignorar y haga clic en Aplicar.

1

Uso string.xml archivo para eliminar esta advertencia ....

Tienes que poner la cadena en el archivo string.xml y luego dar como android:text="@string/mytext"

Y en res-->value->string.xml add <string name="mytext">Your Text</string>

http://tools.android.com/tips/lint

+0

buen enlace, nunca antes se había notado el sitio de herramientas de Android ... parece que hay alguna información útil – ycomp

+0

gracias por la sugerencia, pero esto agrega más problemas de los que me resuelve ... Me gusta mantener las cuerdas archivo relativamente limpio – ycomp

29

Puede añadir lo siguiente en el elemento de visualización de texto:

tools:ignore="HardcodedText" 

Ejemplo:

<TextView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="This is a hardcoded text" 
     tools:ignore="HardcodedText" /> 

cuenta que hay un acceso directo en Eclipse para añadir esto fácilmente: basta con pulsar CTRL + 1 y seleccione la opción relevante.

Desafortunadamente, no pude encontrar una manera de hacer esto para un diseño completo, tendrá que hacerlo para cada elemento.

Tenga en cuenta que también debe agregar el atributo xmlns:tools="http://schemas.android.com/tools al elemento raíz

+0

si agrego las herramientas: ignorar al 'ViewGroup' no funciona? –

+0

Esto es lo que quiero. No quiero ignorar todas las advertencias de pelusas de Android. Son útiles de todos modos, pero a veces me vuelven loco porque lo sé y no lo necesito :) –

+4

Tenga en cuenta que también debe agregar 'xmlns: tools =" http://schemas.android.com/tools " 'atributo al elemento raíz, de lo contrario obtendrá errores como" Error al analizar XML: prefijo unbound ". –

21

La otra forma es utilizar tools:text en lugar de android:text:

<TextView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    tools:text="This is a hardcoded text" /> 

Tenga en cuenta que también debe agregar el atributo xmlns:tools="http://schemas.android.com/tools a la elemento raíz

+2

Encuentro esto mejor que 'tools: ignore =" HardcodedText "' porque la vista previa en realidad lo muestra – Shine

+1

Whaou, no sabía nada de eso, great find – Redwarp

+1

Me gusta esta respuesta, pero el linter se queja de las herramientas: texto siendo también codificado, lo cual es una tontería ya que es solo texto de muestra que no se compila en la aplicación ... no parece ser de ninguna manera para apagarlo ... – Andrew

Cuestiones relacionadas