יכולת פעולה הדדית של 'בקצרה'

במקרים מסוימים, יכול להיות שתרצו להשתמש ב-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, כי הוא משמש להצבת התוכן שהוגדר.