In alcuni casi, potresti voler utilizzare XML e RemoteViews
per fornire una visualizzazione.
Forse hai già implementato una funzionalità senza Glance oppure la funzionalità non è ancora disponibile o possibile con l'attuale API Glance. In queste situazioni, Glance fornisce AndroidRemoteViews
, un'API di interoperabilità.
L'elemento componibile AndroidRemoteViews
consente di combinare RemoteViews
con gli altri elementi componibili:
val packageName = LocalContext.current.packageName Column(modifier = GlanceModifier.fillMaxSize()) { Text("Isn't that cool?") AndroidRemoteViews(RemoteViews(packageName, R.layout.example_layout)) }
Crea e definisci RemoteViews
come faresti senza Glance e passalo
semplicemente come parametro.
Inoltre, puoi creare contenitori RemoteViews
per i componenti componibili:
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...") } }
In questo caso, viene passato un layout che contiene il "contenitore" con l'ID definito. Questo contenitore deve essere un elemento ViewGroup
, poiché viene utilizzato per posizionare i contenuti definiti.