Android 0, limpieza de casting
Una de las cosas que Google anuncia en IO 2017 es algo que se llama 'desechar' :). El desarrollador de Android no tiene que hacer una conversión manual para findViewById (). Por ejemplo, la forma anterior de obtener una vista de texto usando findViewById () sería algo como esto.
TextView txtDesc = (TextView) findViewById(R.id.textViewDesc);
txtDesc.setText(getString(R.string.info_angkot_description));
Mientras que la nueva forma sería así
TextView txtDesc = findViewById(R.id.textViewDesc);
txtDesc.setText(getString(R.string.info_angkot_description));
Es un cambio simple. Pero para un programador experimentado, un código limpio como este puede hacerte muy feliz y te ayuda con tu estado de ánimo de codificación :)
Para poder hacer esto, solo necesita configurar la versión sdk compilada de su proyecto a la versión 26 en su aplicación build.gradle.
Todavía puede apuntar a una versión sdk anterior también, por lo que es un cambio no intrusivo.
Ahora, el verdadero problema, ¿cómo se limpia ese código antiguo que usa la conversión todo este tiempo? Especialmente cuando tienes como cientos de archivos de actividad. Puedes hacerlo manualmente, o tal vez contratar a un interno para hacerlo 😛. Pero afortunadamente para todos esos pasantes, el estudio de Android ya está preparado para ayudarnos con esto.
Cuando pongas tu caret (o hagas clic en el casting redundante), Android Studio te sugerirá 2 opciones para manejar el casting redundante.
Primero, sugerirá eliminar esa conversión redundante o puede seleccionar el código de limpieza. Eliminará toda la conversión redundante para ese archivo. Esto es mejor, pero queremos más. No queremos abrir cada archivo y hacer esta limpieza uno por uno.
Una de las cosas que hace que la idea de IntelliJ sea especial es que es una característica que se llama acción intencional. Todo lo que tienes que hacer es presionar ctrl + shift + A y luego escribir clean. Y seleccione la acción Limpiar código y seleccione todo el alcance del proyecto. Con estos simples pasos, su código será mucho más limpio.
Un punto importante es que haga esto con algún sistema de versiones de código. De esta manera, puede comparar los cambios realizados por la acción intencional y revertir los archivos que desee.
Copiado de la publicación original:
https://medium.com/@abangkis/android-0-clean-up-casting-c30acec56cef
<T extends View> T findViewById(int id)
?