Interoperabilidad de Glance

En algunos casos, es posible que desees usar XML y RemoteViews para proporcionar una vista. Tal vez ya implementaste una función sin Glance o la función está Aún no está disponible ni es posible con la API de Glance actual. En estas situaciones, Glance proporciona AndroidRemoteViews, una API de interoperabilidad.

El elemento AndroidRemoteViews componible permite que se coloquen juntos RemoteViews. con tus otros elementos componibles:

val packageName = LocalContext.current.packageName
Column(modifier = GlanceModifier.fillMaxSize()) {
    Text("Isn't that cool?")
    AndroidRemoteViews(RemoteViews(packageName, R.layout.example_layout))
}

Crea y define el elemento RemoteViews como lo harías sin Glance, y simplemente pasa como parámetro.

Además, puedes crear contenedores de RemoteViews para tus elementos componibles:

AndroidRemoteViews(
    remoteViews = RemoteViews(packageName, R.layout.my_container_view),
    containerViewId = R.id.example_view
) {
    Column(modifier = GlanceModifier.fillMaxSize()) {
        Text("My title")
        Text("Maybe a long content...")
    }
}

En este caso, un diseño que contenga la etiqueta "container" se pasan con los valores ID. Este contenedor debe ser un objeto ViewGroup, ya que se usa para colocar la al contenido definido.