Android funciona con DataBinding

Android DataBinding proporciona una forma de conectar la interfaz de usuario a la lógica empresarial, permitiendo que los valores de la interfaz de usuario se actualicen automáticamente sin intervención manual. Esto reduce la mayor parte del código de la caldera en la lógica empresarial, que generalmente se escribe para sincronizar la interfaz de usuario cuando hay nuevos datos disponibles. DataBinding es uno de los componentes de la arquitectura de Android sugeridos por Android.

En este artículo aprenderemos los conceptos básicos de DataBinding y en el siguiente artículo, se construye una pantalla de perfil simple usando RecyclerView con DataBinding .

  android-databinding-tutorial-example

1.1 Habilitación de DataBinding
1.2 Ejemplo básico
1.3 ¿No se generan mis clases de DataBinding?
1.4 Enlace de datos en el diseño
1.5 Enlace de escucha de clics / Evento de manejo
1.6 Actualización de la interfaz de usuario usando Observables
1.7 Actualización de la interfaz de usuario usando ObservableFields
1.8 Carga de imágenes desde la URL (Glide o Picasso)
1.9 Funciones de enlace de Java (importaciones) [19659007] 1. Conceptos básicos de DataBinding

1.1 Habilitación de DataBinding

Para comenzar con DataBinding, primero debe habilite esta función en su proyecto de Android. Abra build.gradle que se encuentra debajo de la aplicación y habilite dataBinding en módulo de Android . Una vez habilitado, Sincronice el proyecto y estará listo para comenzar.















  android {
    el enlace de datos {
        habilitado = verdadero
    }

    compileSdkVersion 27

    defaultConfig {
        applicationId "info.androidhive.databinding"
        minSdkVersion 16
        // ..
    }
}

1.2 Ejemplo básico

Suponga que queremos mostrar información de usuario de una clase de usuario POJO . Generalmente mostramos información en un TextView usando el método setText () . En lugar de llamar manualmente a setText para cada propiedad de usuario, DataBinding nos permite asociar valores automáticamente.

La clase POJO subyacente crea un objeto Usuario con nombre y correo electrónico.






















  Usuario de clase pública {
    Nombre de cadena;
    Cadena de correo electrónico;

    public String getName () {
        nombre de retorno;
    }

    public void setName (nombre de cadena) {
        this.name = nombre;
    }

    public String getEmail () {
        devolver correo electrónico;
    }

    public void setEmail (String email) {
        this.email = correo electrónico;
    }
}

Para habilitar DataBinding en un diseño, el elemento root debe comenzar con la etiqueta . Junto con él, se utilizan las etiquetas y .

La estructura del diseño de enlace de datos se muestra a continuación.














  • El diseño debe tener como elemento raíz. Dentro se insertará el código de diseño habitual.
  • Sigue una etiqueta en . Todas las variables y métodos de asociación deben ir dentro de la etiqueta .
  • Dentro de las etiquetas se declarará una variable usando la etiqueta . La etiqueta variable toma dos atributos `nombre` y ` tipo` . El atributo de nombre será el nombre de alias y el tipo debe ser de la clase de modelo de objeto. En nuestro caso, ruta a la clase Usuario .
  • Para asociar un valor, debe usar la anotación @ . En el siguiente diseño, el usuario nombre y correo electrónico están asociados con TextView usando @ {user.name} y @ {usuario .email} [19659029] Una vez que la asociación de datos está integrada en el archivo de diseño, vaya a Build -> Clean Project y Build -> Rebuild Project . Esto generará las clases de asociación necesarias.
  • Las clases de asociación generadas siguen la convención de nomenclatura considerando el nombre del archivo de diseño en el que está habilitada la asociación. Para el diseño activity_main.xml la clase de asociación generada será ActivityMainBinding (el sufijo de asociación se agregará al final).
  • Para asociar datos en la interfaz de usuario, primero debe inflar el diseño de asociación utilizando las clases de asociación generadas. A continuación, ActivityMainBinding infla primero el diseño y binding.setUser () enlaza el objeto Usuario al diseño.

Aquí puede observar que no hemos utilizado findViewById () en todas partes.



























  import android.databinding.DataBindingUtil;
importar android.os.Bundle;
importar android.support.v7.app.AppCompatActivity;

importar información.androidhive.databinding.databinding.ActivityMainBinding;

clase pública MainActivity extiende AppCompatActivity {

    usuario usuario privado;
    
    @Oltrepassare
    Void onCreate protegido (paquete savedInstanceState) {
        super.onCreate (savedInstanceState);

        // setContentView (R.layout.activity_main);

        Enlace de ActivityMainBinding = DataBindingUtil.setContentView (esto, R.layout.activity_main);

        usuario = nuevo usuario ();
        user.setName ("Ravi Tamada");
        user.setEmail ("ravi@androidhive.info");

        binding.setUser (usuario);
    }
}

Si ejecuta la aplicación, puede ver los detalles del usuario que se muestran en TextViews.

  ejemplo de enlace de datos de Android

About MiReal

Compruebe también

Aquí está la primera imagen del próximo Huawei P50 Pro

Hoy, la primera imagen del próximo teléfono inteligente insignia de Huawei apareció en la web, …

Deja una respuesta

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