Wear OS-Kacheln in Android Studio als Vorschau ansehen

Ab dem Feature Drop in Android Studio Koala können Sie sich Momentaufnahmen Kacheln der Wear OS-App Dieses Steuerfeld ist besonders nützlich, sich abhängig von den Bedingungen verändern, etwa unterschiedlicher Inhalt je nach Displaygröße des Geräts oder bei einer Sportveranstaltung, die Halbzeit erreicht.

Die Gruppennamen im Vorschaubereich entsprechen den Gruppennamen, die im Feld
    Vorschau der Anmerkung
Vorschaubereich für Kacheln in Android Studio

Abhängigkeiten hinzufügen

Fügen Sie die folgenden Abhängigkeiten in die Datei build.gradle.kts Ihrer Anwendung ein oder build.gradle-Datei:

dependencies {
    implementation("androidx.wear.tiles:tiles-tooling-preview:1.4.0")
    debugImplementation("androidx.wear.tiles:tiles-tooling:1.4.0")
    implementation("androidx.wear:wear-tooling-preview:1.0.0")
}

Kachelvorschauen konfigurieren

Vorschau der Darstellung Ihrer Ansicht auf verschiedenen Wear OS-Displays ansehen Größen, fügen Sie die Annotation @Preview hinzu und übergeben Sie den Parameter device. Hinweis dass diese @Preview-Annotation aus einem anderen Paket stammt als das, das Sie können Sie sie für zusammensetzbare Vorschauen verwenden.

import androidx.wear.tiles.tooling.preview.Preview

@Preview(device = WearDevices.SMALL_ROUND)
@Preview(device = WearDevices.LARGE_ROUND)
fun tilePreview(context: Context) = TilePreviewData(
    onTileRequest = { request ->
        TilePreviewHelper.singleTimelineEntryTileBuilder(
            buildMyTileLayout()
        ).build()
    }
)

Ressourcen hinzufügen und registrieren

Wenn Ihre Kachel Android-Ressourcen verwendet, müssen Sie diese im onTileResourceRequest-Parameter von TilePreviewData, wie im folgenden Code-Snippet:

import androidx.wear.tiles.tooling.preview.Preview

@Preview(device = WearDevices.SMALL_ROUND)
fun previewWithResources(context: Context) = TilePreviewData(
    onTileResourceRequest = { request ->
        Resources.Builder()
            .setVersion(myResourcesVersion)
            .addIdToImageMapping(
                    myImageId, getImageById(R.drawable.myDrawableImageId))
            .build()
    },
    onTileRequest = { request ->
        TilePreviewHelper.singleTimelineEntryTileBuilder(
            buildMyTileLayout()
        ).build()
    }
)

fun getImageById(
    @DrawableRes id: Int,
): ImageResource =
    ImageResource.Builder()
        .setAndroidResourceByResId(
            AndroidImageResourceByResId.Builder()
                .setResourceId(id)
                .build(),
        )
        .build()

Bestimmte Werte aus Plattformdatenquellen anzeigen

Wenn Ihre Kachel Plattformdaten verwendet – wie Herzfrequenz, Kalorien, Entfernung und Schritte – die Kachel zeigt Standardwerte für sie an.

Wenn ein bestimmter Wert angezeigt werden soll, legen Sie beim Erstellen den Parameter platformDataValues fest TilePreviewData, wie im folgenden Code-Snippet gezeigt:

import androidx.wear.tiles.tooling.preview.Preview

@Preview(device = WearDevices.SMALL_ROUND)
fun previewWithPlatformOverride(context: Context) = TilePreviewData(
    platformDataValues = PlatformDataValues.of(
        PlatformHealthSources.Keys.HEART_RATE_BPM,
        DynamicDataBuilders.DynamicDataValue.fromFloat(160f)
    ),
    onTileRequest = { request ->
        TilePreviewHelper.singleTimelineEntryTileBuilder(
            buildMyTileLayout()
        ).build()
    }
)