Aplicaciones Android

Prácticas plantillas de código para vistas personalizadas de Android

La creación de una olfato personalizada en Android en Java requiere extender la clase View y proporcionar los siguientes 3 constructores sobrecargados (si planea usar la olfato personalizada solo mediante programación, debe proporcionar al menos un constructor de solo contexto):

public class CustomView extends View 

    public CustomView(Context context) 
        this(context, null);
    

    public CustomView(Context context, 
                      @Nullable AttributeSet attrs) 
        this(context, attrs, 0);
    

    public CustomView(Context context, 
                      @Nullable AttributeSet attrs, 
                      int defStyleAttr) 
        super(context, attrs, defStyleAttr);
    

De acuerdo, esto es un poco generoso, pero se puede adaptar.

Desde que apareció Kotlin, los desarrolladores pueden usar su poder expresivo para acortar en gran medida el código repetitivo.
El equivalente antedicho en Kotlin es este:

class CustomView @JvmOverloads constructor(
    context: Context,
    attrs: AttributeSet? = null,
    defStyleAttr: Int = 0
) : View(context, attrs, defStyleAttr)

La parte más mágica aquí es la anotación @JvmOverloads, que indica al compilador que cree todas las variantes del constructor de la clase basándose en el hecho de que ciertos parámetros son opcionales.

Captura de pantalla 2020-08-01 a las 18.10.06.png

Si le gusta este método para mejorar la eficiencia del trabajo, entonces irá un paso más allá y creará una plantilla de código para usted y generará el código automáticamente. Esto es un hecho: esto se hace en la ventana «Preferencias»:
Captura de pantalla 2020-08-01 a las 18.32.09.png

Luego de configurarlo, usará este menú contextual para crear una nueva olfato personalizada a partir de la plantilla que acaba de crear y le dará un nombre a su clase. Puede usar:
Captura de pantalla 2020-08-01 a las 18.37.37.png

Espero que encuentre útil esta técnica. ¡Adecuado codificación!

LEER  Mi TV Stick 4K: un nuevo competidor entre Android TV 11 y Chromecast

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba