Wear OS obsługuje dynamiczne aktualizacje informacji wyświetlanych na kafelkach i widżetach.
Za pomocą wyrażeń dynamicznych możesz powiązać dane wyświetlane na powierzchni aplikacji, np. na kafelku lub w komplikacji, z określonym źródłem danych. Przykładem takiego źródła danych są dane o tętnie, które platforma może odczytać. Po utworzeniu tego powiązania system automatycznie aktualizuje dane w kafelkach i komplikacjach.
Tworzenie dynamicznych wiązań danych
Aby utworzyć powiązanie z danymi dynamicznymi, zdefiniuj zmienną, która używa dynamicznego typu danych. Powiąż tę zmienną ze strumieniem danych, którego chcesz użyć.
Możesz na przykład pobrać wartości związane z zegarem systemowym i informacjami o zdrowiu, jak pokazano w tym fragmencie kodu.
val systemTime = DynamicInstant.platformTimeWithSecondsPrecision() val steps: DynamicInt32 = PlatformHealthSources.dailySteps()
Możesz też tworzyć wartości dynamiczne z wyrażeń stałych i wykonywać na nich operacje arytmetyczne, jak pokazano w tym fragmencie kodu:
val dynamicAdditionResult = DynamicInt32.constant(1).plus(2)
Lista możliwych typów danych dynamicznych
Wear OS obsługuje te typy danych dynamicznych:
Możesz też przekształcić typ danych za pomocą wbudowanych funkcji, takich jak:
DynamicInt32obsługuje konwersję naDynamicStringza pomocąformat().DynamicDurationumożliwia wyodrębnianie określonych części, np. sekund z czasu trwania, jako obiektówDynamicInt32.
Używaj ograniczonej liczby dynamicznych wyrażeń na każdym ekranie.
System ma limit liczby dynamicznych wyrażeń, które może przetwarzać jednocześnie na danym ekranie. System przekształca wszystkie dodatkowe wyrażenia dynamiczne w wartości statyczne.
Wear OS uznaje stałe wyrażenia za wyrażenia dynamiczne. Na przykład ten fragment kodu zawiera 4 wyrażenia dynamiczne:
- Operacja
plus(). - Operacja
animate(). - Wyrażenie
constant(1). - Wyrażenie
constant(2), które jest implikowane przez wartość2w wyrażeniu dynamicznymplus().
val animatedAdditionResult = DynamicInt32.constant(1).plus(2).animate()
Dodatkowe materiały
Więcej informacji o używaniu wyrażeń dynamicznych w konkretnych usługach znajdziesz na tych stronach:
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy język JavaScript jest wyłączony.
- Migracja do przestrzeni nazw ProtoLayout
- Efekty uboczne w Compose
- AGSL – szybkie informacje