In some cases, you may want to use XML and RemoteViews to provide a view.
Возможно, вы уже реализовали функцию без Glance, или она пока недоступна или невозможна с текущим Glance API. Для таких ситуаций в Glance есть API совместимости AndroidRemoteViews.
Функция AndroidRemoteViews позволяет разместить RemoteViews вместе с другими composable-функциями:
val packageName = LocalContext.current.packageName Column(modifier = GlanceModifier.fillMaxSize()) { Text("Isn't that cool?") AndroidRemoteViews(RemoteViews(packageName, R.layout.example_layout)) }
Создайте и определите RemoteViews так же, как и без Glance, и передайте его в качестве параметра.
Кроме того, вы можете создать контейнеры RemoteViews для своих composable-функций:
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...") } }
В этом случае макет, содержащий контейнер, передается с определенным идентификатором. Этот контейнер должен быть элементом ViewGroup, поскольку он используется для размещения определенного контента.