Ho esaminato varie domande e risposte su SO simili a questa domanda ma non ho trovato una soluzione.
Quello che ho è un'enumerazione che rappresenta diversi modi per visualizzare una guida TV ...
Nella Applicationclasse NDroid
static enum guideView {
GUIDE_VIEW_SEVEN_DAY,
GUIDE_VIEW_NOW_SHOWING,
GUIDE_VIEW_ALL_TIMESLOTS
}
... quando l'utente cambia la vista, un gestore di eventi riceve uno int0-2 e mi piacerebbe fare qualcosa del genere ...
In un Activity onClick(DialogInterface dialog, int which)gestore di eventi Android
// 'which' is an int from 0-2
switch (which) {
case NDroid.guideView.GUIDE_VIEW_SEVEN_DAY:
...
break;
}
Sono abituato alle enumerazioni C # e alle istruzioni select / case che consentirebbero qualcosa di simile a quanto sopra e so che Java fa le cose in modo diverso ma non riesco a dare un senso a ciò che devo fare.
Dovrò ricorrere a ifdichiarazioni? Probabilmente ci saranno solo 3 scelte, quindi potrei farlo, ma mi chiedevo come potesse essere fatto con switch-case in Java.
EDIT Spiacente, non ho approfondito completamente il problema perché lo consideravo un problema generico di Java. Ho aggiunto alla domanda per spiegare un po 'di più.
Non c'è nulla di specifico per Android, motivo per cui non l'ho etichettato come Android ma l'enum è definito nella Applicationclasse e il codice in cui non voglio lo switch è in un file Activity. L'enumerazione è statica poiché è necessario accedervi da più attività.
OnClickListener ) è definito DialogInterfacedall'interfaccia che devo implementare.
case GUIDE_VIEW_SEVEN_DAYdopo le importazioni corrette; che problema stai riscontrando?