במקרים מסוימים, יכול להיות שתרצו להשתמש ב-XML וב-RemoteViews כדי לספק תצוגה.
יכול להיות שכבר הטמעתם תכונה בלי Glance, או שהתכונה עדיין לא זמינה או לא אפשרית ב-Glance API הנוכחי. במצבים כאלה, Glance מספק את AndroidRemoteViews, ממשק API של יכולת פעולה הדדית.
הרכיב הקומפוזבילי AndroidRemoteViews מאפשר להציב את RemoteViews יחד עם הרכיבים הקומפוזביליים האחרים:
val packageName = LocalContext.current.packageName Column(modifier = GlanceModifier.fillMaxSize()) { Text("Isn't that cool?") AndroidRemoteViews(RemoteViews(packageName, R.layout.example_layout)) }
יוצרים ומגדירים את RemoteViews כמו שהייתם עושים בלי Glance, ומעבירים אותו כפרמטר.
בנוסף, אתם יכולים ליצור קונטיינרים מסוג RemoteViews לרכיבים הניתנים לשילוב:
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...") } }
במקרה הזה, פריסה שמכילה את ה-"container" מועברת עם המזהה שהוגדר. המאגר הזה חייב להיות ViewGroup, כי הוא משמש להצבת התוכן שהוגדר.