Создание пользовательских интерфейсов на основе представлений в Wear OS

Android Jetpack включает библиотеку пользовательского интерфейса Wear OS. Библиотека пользовательского интерфейса Wear OS включает следующие классы:

  • CurvedTextView : компонент для удобного написания текста, повторяющего кривизну наибольшего круга, который можно вписать в представление.
  • DismissibleFrameLayout : макет, который позволяет пользователю закрыть любое представление, нажав кнопку «Назад» или проведя пальцем по экрану слева направо. Пользователи Wear OS ожидают, что для обратного действия потребуется провести пальцем слева направо.
  • WearableRecyclerView : представление, которое обеспечивает базовую логику смещения для обновления дочерних макетов с помощью WearableLinearLayoutManager .
  • AmbientModeSupport : класс, используемый с интерфейсом AmbientModeSupport.AmbientCallbackProvider для обеспечения поддержки окружающего режима.

Полный список можно найти в примечаниях к выпуску .

Добавьте зависимость от библиотеки пользовательского интерфейса Wear OS.

Чтобы начать создавать приложения, создайте проект для Wear OS. Затем добавьте следующие зависимости в файл build.gradle вашего приложения:

dependencies {
    ...
  // Standard Wear OS libraries
  implementation "androidx.wear:wear:1.2.0"
  // includes support for wearable specific inputs
  implementation "androidx.wear:wear-input:1.1.0"
}

Импортируйте классы из пакета библиотеки пользовательского интерфейса Wear OS.

Чтобы использовать класс из библиотеки пользовательского интерфейса Wear OS, импортируйте его из пакета androidx.wear.widget .

Используйте правильные имена элементов в файлах макета.

В файлах макетов используйте полные имена, соответствующие библиотеке пользовательского интерфейса Wear OS.

Например, чтобы использовать класс DismissibleFrameLayout из библиотеки пользовательского интерфейса Wear OS, вы можете указать в файле макета следующее:

<androidx.wear.widget.DismissibleFrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/swipe_dismiss_root" >

    <TextView
        android:id="@+id/test_content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:gravity="center"
        android:text="Swipe the screen to dismiss me." />
</androidx.wear.widget.DismissibleFrameLayout>