Mi proyecto de Android ha duplicado las declaraciones entre Enum y string.xml

Tengo matrices de la secuencia a utilizar para el Spinner o tal.

 <string-array name="Animal"> <item >Cat</item> <item >Dog</item> <item >Rabbit</item> <item >Bird</item> </string-array> 

Tengo una clase de contenedor para contener valores de entrada de usuarios o seleccionar de Spinner . Las variables miembro son en su mayoría primitivas o Enum .

 public class Container { protected int index; protected int age; protected String name; protected Animal pet; } 

Esta es la forma en que se define una de las clases de Enum (Note que esta es una versión más simple, y en mi código actual, hay algunos métodos o variables, y cada instancia de Enum es mayúscula, como CAT).

 public enum Animal { Cat, Dog, Rabbit, Bird, } 

Como ves, estoy repitiendo prácticamente lo mismo en Enum y XML. Eso no es realmente bueno según DRY. ¿Qué debo eliminar, y cómo debería hacerlo?

En este punto, me inclino a mantener Enum , ya que es funcionalmente más versátil que XML, y no menos fácil de mantener. El único problema posible que podría estar preocupado es su rendimiento. Pueden requerir más memoria, y algún trabajo adicional de codificación.

Si desea evitar la duplicación, debe mantener el Enum y, a continuación, se rellena programmaticaly el hilandero utilizando for(Animal animal:Animal.values()) {...} .

Puede usar el nombre de Enum como clave para recuperar una etiqueta localizada o cosas así.

  • ¿Debería estar lleno el archivo xml del contenido de la copia de seguridad completa o no incluirlo en todos?
  • Advertencia: Este <FrameLayout> se puede reemplazar con una etiqueta <merge>
  • Androide. OnEditorAction nunca llamado
  • Cadena de resultados de Android HttpUrlConnection truncada
  • Caja de múltiples movimientos de Android en xml extraíble
  • Cómo diseñar o diseñar correctamente un cajón de navegación de Android
  • No hay números de línea en Eclipse o en el editor de Android Studio XML.
  • Declaración de atributos elegibles en Android
  • Android: ¿Cómo navegar de nuevo desde la sub-pantalla de preferencia a través de la barra de acción en xml?
  • ExpandableListView lista expandible no expandir cuando su altura es wrap contenido, y algo está por debajo de él
  • Quiero usar Xpath en Android para analizar XML
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.