He mirado varias preguntas y respuestas sobre SO similares a esta pregunta pero no he encontrado una solución.
Lo que tengo es una enumeración que representa diferentes formas de ver una guía de TV ...
En la Applicationclase NDroid
static enum guideView {
GUIDE_VIEW_SEVEN_DAY,
GUIDE_VIEW_NOW_SHOWING,
GUIDE_VIEW_ALL_TIMESLOTS
}
... cuando el usuario cambia la vista, un controlador de eventos recibe un int0-2 y me gustaría hacer algo como esto ...
En un Activity onClick(DialogInterface dialog, int which)controlador de eventos de Android
// 'which' is an int from 0-2
switch (which) {
case NDroid.guideView.GUIDE_VIEW_SEVEN_DAY:
...
break;
}
Estoy acostumbrado a las enumeraciones de C # y las declaraciones select / case que permitirían algo como lo anterior y sé que Java hace las cosas de manera diferente, pero no puedo entender lo que tengo que hacer.
¿Voy a tener que recurrir a ifdeclaraciones? Es probable que solo haya 3 opciones, por lo que podría hacerlo, pero me preguntaba cómo se podría hacer con switch-case en Java.
EDITAR Lo siento, no amplié completamente el problema ya que lo veía como un problema genérico de Java. Agregué a la pregunta para explicar un poco más.
No hay nada que sea específico de Android, por lo que no lo etiqueté como Android, pero la enumeración está definida en la Applicationclase y el código donde no quiero que el interruptor esté en un Activity. La enumeración es estática ya que necesito acceder a ella desde múltiples actividades.
OnClickListener ) está definido por la DialogInterfaceinterfaz que tengo que implementar.
case GUIDE_VIEW_SEVEN_DAYdespués de las importaciones adecuadas; ¿Qué problema (s) tienes?