Począwszy od pakietu funkcji Koala w Android Studio, możesz przeglądać migawki Kafelki aplikacji na Wear OS. Ten panel jest szczególnie przydatny, jeśli wygląd Twojego kafelka zmian w odpowiedzi na warunki, takie jak rodzaj zawartości, w zależności od rozmiar wyświetlacza urządzenia lub zbliżające się pół godziny wydarzenia sportowego.
Dodaj zależności
Uwzględnij te zależności w parametrze build.gradle.kts
lub
Plik build.gradle
:
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")
}
Konfigurowanie podglądu kafelków
Aby wyświetlić podgląd wyglądu kafelka na różnych rozmiarach ekranów urządzeń z systemem Wear OS, dodaj adnotację @Preview
i przekaż parametr device
. Notatka
że ta adnotacja @Preview
pochodzi z innego pakietu niż Twój
użyj na potrzeby kompozycji podglądów.
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()
}
)
Dodawanie i rejestrowanie zasobów
Jeśli kafelek korzysta z zasobów Androida, musisz zarejestrować je w
onTileResourceRequest
parametru TilePreviewData
, jak w tabeli
ten fragment kodu:
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()
Wyświetlanie konkretnych wartości z źródeł danych platformy
Jeśli kafelek korzysta z danych platformy, takich jak tętno, kalorie, dystans kroków – kafelek pokazuje ich wartości domyślne.
Aby wyświetlać konkretną wartość, ustaw parametr platformDataValues
podczas tworzenia
obiekt TilePreviewData
, jak widać w tym fragmencie kodu:
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() } )