2012-08-31 48 views
7

¿Es posible crear un alias para un nombre de paquete, que pueda consultar en un archivo xml?Alias ​​o alias del nombre del paquete

No deseo escribir el nombre completo del paquete, p. com.example.go.deck.today en su lugar, ¿puedo crear un alias y referir ese alias?

Me gustaría referir un alias o nick en lugar del nombre del paquete en un archivo XML de android/layout.

Respuesta

5

Android por sí solo no proporciona dicha facilidad. Sin embargo, puedes usar la hormiga para hacerlo por ti. Puede escribir un build.xml personalizado, personalizando el destino <target name="-code-gen"> para reemplazar token antes de que se genere la clase R. Se podría añadir la regla:

<replace file="targetFile" token="@[email protected]" value="com.example.go.deck.today"/> 

esto podría reemplazar cada ocurrencia de @[email protected] por com.example.go.deck.today en el targetFile.

No soy un especialista en ant pero, según la experiencia anterior, diría que no sería difícil escribir una regla que pudiera escanear todos los archivos en el directorio res.

9

No, lo siento, no es posible, al menos no directamente dentro del conjunto de herramientas de Android.

2

Aunque no está directamente posible hacer referencia a un nombre de paquete, sin embargo, para utilizar un ‘resource’ en un código xml o sea:

package.R.resource_type.resource_name 

y

@[package:]resource_type/resource_name 

NOTA: paquete de aquí hace no significa ‘java package’ sino package == application, por lo que si está accediendo a un recurso que está definido en su propia aplicación, puede omitirlo. Es por eso que usamos @strings/name o directamente R.strings.name. De manera similar a usar los recursos definidos por Android, usaremos @android:string/name o android.R.string.name