Cambiar instrucción con cadena como argumento en Android
Me gustaría usar una instrucción switch como en Java 1.7 que también permite switch(someString)
. Sin embargo, si cambio el compilador de Java a 1.7 el proyecto se rompe y tengo que volver a 1.5 o usar el android tools-> fix project
.
¿Hay alguna forma de usar switch con Strings en el desarrollo de Android?
- Para eventos de Android, ¿por qué las sentencias switch son más comunes que if-else?
- Problema de conmutación: solo una opción visible
- Ocultar texto predeterminado para el botón de Android
- Menú emergente personalizado de Android con conmutador
- Botones onClick del interruptor
- Android: El botón OnClickListener no funciona
- Switch case statement error: las expresiones case deben ser constantes
- Obteniendo la instancia Switch dentro de ActionBar
- Widget de conmutador vertical Android
- Cómo agregar un escucha a un botón de conmutación?
- Android Cambiar entre actividades
- ¿Usando cuerdas en una caja de conmutación para un menú?
- Cómo cambiar entre actividades con viewflipper
EDITAR
Personalmente, no he probado, pero de acuerdo con la página de requisitos del sistema de Android , no es compatible. Dicho esto, no significa que no funcionaría, sólo que es poco probable que reciba mucha / cualquier ayuda sobre el tema de Google / Android.
JDK 5 o JDK 6 (JRE solo no es suficiente)
En una nota potencialmente positiva, (encontrada con la ayuda de @Emil H y su comentario) he encontrado estos bits de información en línea:
De Dalvik en Wikipedia :
Los programas se escriben comúnmente en un dialecto de Java y se compilan a bytecode. Luego se convierten de archivos .class compatibles con Java Machine Virtual a archivos .dex (Dalvik Executable) compatibles con Dalvik …
Si el bytecode no cambia de la versión 6 a 7 (excluyendo el añadido invokedynamic
mencionado por @David Schwartz, que las sentencias switch
no debe usar.), Entonces debería funcionar …
Usted debe ser capaz de utilizar JDK7 con Android. Compruebe esta respuesta a una pregunta relacionada:
https://stackoverflow.com/a/7481063/355499
EDITAR:
Probado localmente y todo funciona bien con JDK7 (es lo que uso al desarrollar). Sin embargo, no puedo encontrar una manera de cambiar el nivel de cumplimiento de 1,6 a 1,7 en mi proyecto android. Si realmente quieres hacer esto, supongo que tendrías que recurrir a la construcción de tu proyecto por otros medios que usar Eclipse. Por ejemplo, utilizando un script de hormigas o similar. Podría ser un poco más de trabajo de lo que vale sin embargo.
Por ahora no es posible: aunque en el compilador Java 1.7 se introdujo la sentencia switch con String, lamentablemente Android requiere la versión 1.6 o 1.5. Así que tenemos que esperar.
- Cordova – Actualizaciones de Android (congelar versiones)
- ¿Los dispositivos móviles tienen CPU suficiente para admitir HTTPS para todo el tráfico de un sitio web?