Android: liveData-JLin con un clic

Puede ver que es una función en CoroutineLIveData.kt, generalmente comparamos este tipo llamado liveData Builder
Puede ser definido

A través de la definición de la última lambda, y los dos primeros parámetros tienen valores preestablecidos, por lo que no es necesario traerlos, lo que equivale solo a la lambda del último LiveDataScope, y es un LiveData generado por el generador CourtoutineLiveData , mientras que CoroutineDataLive es un objeto que hereda MediatorLiveData
Al ver que estaba iniciado a través de BlockRunner y finalmente le puso el contenido de la lambda para su ejecución
Si encuentra que su viewModel tiene un tiempo adecuado, puede usar liveData … para completar el proceso LiveData de una toma, que se puede hacer y activar mediante un mecanismo simple.
Agregar muchos ejemplos también puede escribirlo como no una toma, un datos de reproducción de bucle
Se puede esperar que lo haga
- Mostrar «Cargando» primero
- Retraso 2 s
- Mostrar hoy …
- Retraso 1 s
Entonces, repetidamente, el punto es que terminará automáticamente después de que se borre viewModel, es decir, cuando salte de un Fragmento A a un Fragmento B, terminará automáticamente, sin la necesidad de tratar con él usted mismo como el temporizador anterior, y La percepción del ciclo de vida es relativamente segura. Si su evento requiere vivir en segundo plano, este método no es adecuado para llamar.
Se puede ver que esto es para usar el generador de flujo para construir un stateFlow de fin de semana, pero debe pasar algunos parámetros definidos por stateIn, entre los cuales el tiempo de inicio del whileSubscriptions es el tiempo de espera, y debe haber un valor final en el comienzo. «Cargando»
Este efecto será el mismo que liveData, pero la secuencia debe ser llamada en el coroutineScope. La diferencia se puede ver en el fragmento. Además, si es un método a nivel de bloque después de la colección, la colección se puede cancelar y permanecerá atascado aquí. Punto de recogida dentro del alcance
Créelo, también puede usarlo como LiveData por transmisión
Volver a liveData
Puedo usar liveData para suscribirme en Framgent
lo anterior
Referencia