Android Studio Koala Özellik Düşüşü'nden başlayarak Wear OS uygulamanızın karolarının anlık görüntülerini görebilirsiniz. Bu panel, özellikle durum, cihazın ekran boyutuna bağlı olarak farklı içerikler gibi koşullara bağlı olarak karo görünümü değişirse veya bir spor etkinliğinin devre yarısına ulaştığı durumlarda faydalıdır.
Bağımlılıkları ekleme
Uygulamanızın build.gradle.kts
veya build.gradle
dosyasına aşağıdaki bağımlılıkları ekleyin:
dependencies {
implementation("androidx.wear.tiles:tiles-tooling-preview:1.4.0-rc01")
debugImplementation("androidx.wear.tiles:tiles-tooling:1.4.0-rc01")
implementation("androidx.wear:wear-tooling-preview:1.0.0")
}
Döşeme önizlemelerini yapılandırma
Karonunuzun farklı Wear OS ekran boyutlarında önizlemesini görmek için @Preview
ek açıklamasını ekleyip device
parametresini iletin. Bu @Preview
ek açıklamasının, oluşturulabilir önizlemeler için kullandığınızdan farklı bir pakete ait olduğunu unutmayın.
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()
}
)
Kaynak ekleme ve kaydetme
Karonuz Android kaynaklarını kullanıyorsa bunları aşağıdaki kod snippet'inde gösterildiği gibi TilePreviewData
öğesinin onTileResourceRequest
parametresi içinde kaydetmeniz gerekir:
import androidx.wear.tiles.tooling.preview.Preview @Preview(device = WearDevices.SMALL_ROUND) fun previewWithResources(context: Context) = TilePreviewData( onTileResourceRequest = { request -> ProtoResources.Builder() .setVersion(myResourcesVersion) .addIdToImageMapping( myImageId, getImageById(R.drawable.myDrawableImageId)) .build() }, onTileRequest = { request -> TilePreviewHelper.singleTimelineEntryTileBuilder( buildMyTileLayout() ).build() } )
Platform veri kaynaklarından alınan belirli değerleri göster
Kutunuz nabız, kalori, mesafe ve adım gibi platform verilerini kullanıyorsa kutuda bu veriler için varsayılan değerler gösterilir.
Belirli bir değeri göstermek için aşağıdaki kod snippet'inde gösterildiği şekilde TilePreviewData
nesnesini oluştururken platformDataValues
parametresini ayarlayın:
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() } )