Bazı durumlarda, bir görünüm sağlamak için XML ve RemoteViews
kullanmak isteyebilirsiniz.
Belki de Glance olmadan bir özelliği zaten uygulamışsınızdır veya bu özellik henüz mevcut Glance API ile kullanılamıyordur ya da bu mümkün değildir. Glance, bu durumlar için bir birlikte çalışabilirlik API'si olan AndroidRemoteViews
'i sunar.
AndroidRemoteViews
kompozisyonu, RemoteViews
öğesinin diğer bestecilerinizle bir araya getirilmesine olanak tanır:
val packageName = LocalContext.current.packageName Column(modifier = GlanceModifier.fillMaxSize()) { Text("Isn't that cool?") AndroidRemoteViews(RemoteViews(packageName, R.layout.example_layout)) }
RemoteViews
öğesini, Glance'ta olduğu gibi oluşturup tanımlayın ve parametre olarak iletin.
Ayrıca, beste öğeleriniz için RemoteViews
kapsayıcıları oluşturabilirsiniz:
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...") } }
Bu durumda, "kapsayıcı"yı içeren bir düzen, tanımlanan kimlikle iletilir. Bu kapsayıcı, tanımlanan içeriği yerleştirmek için kullanıldığından ViewGroup
olmalıdır.