Plecak odrzutowy
androidx.compose.material3
umożliwia użytkownikom pisanie w dowolnym komponencie TextField
w dowolnej aplikacji za pomocą rysika.
Aby domyślnie włączyć wprowadzanie rysikiem, dodaj zależność biblioteki do biblioteki
Plik build.gradle
:
Kotlin
dependencies { implementation("androidx.compose.foundation:foundation:LATEST_COMPOSE_VERSION") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "LATEST_EXTENSION_VERSION" } kotlinOptions { jvmTarget = "LATEST_JVM_VERSION" } }
Odlotowe
dependencies { implementation 'androidx.compose.foundation:foundation:LATEST_COMPOSE_VERSION' } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = 'LATEST_EXTENSION_VERSION' } kotlinOptions { jvmTarget = 'LATEST_JVM_VERSION' } }
TextField
Pismo odręczne rysikiem jest domyślnie włączone we wszystkich komponentach TextField
Androida 14 lub nowszego oraz
androidx.compose.foundation:foundation:1.7.0
.
zależności. Tryb pisma odręcznego jest włączany na urządzeniu TextField
po ruchu rysika
jest wykrywane w granicach pisma odręcznego komponentu.
Granice pisma odręcznego obejmują 40 dp pionowego dopełnienia i 10 dp w poziomie. wokół pola do wprowadzania danych.
![Pole do wprowadzania danych z otaczającym je prostokątem, które wskazuje granice wykrywania zdarzeń ruchu rysika.](https://developer.android.google.cn/static/images/develop/ui/compose/touch-input/stylus-input/shared/edittext_handwriting_bounds.png?authuser=19&hl=pl)
TextField
).
Pismo odręczne rysikiem nie jest obsługiwane w polach TextField
, gdy metoda wprowadzania
została wysłana prośba o dodanie do edytora przy użyciu KeyboardType.Password
.
Przekazywanie danych wejściowych
Aplikacje mogą wyświetlać zastępcze elementy interfejsu, które wyglądają jak pola do wprowadzania tekstu, ale są po prostu statycznymi elementami interfejsu, które nie mają możliwości wprowadzania tekstu. Szukaj to typowy przykład. Kliknięcie statycznego elementu interfejsu aktywuje przejście z nowym interfejsem, który zawiera funkcjonalne pole do wprowadzania tekstu.
Przekazywanie danych wejściowych rysikiem
Używaj interfejsów API przekazywania pisma odręcznego do obsługi wprowadzania pisma odręcznego rysikiem w przypadku:
zastępcze pola do wprowadzania danych (patrz handwritingDetector
i
handwritingHandler
). Zastępczy element interfejsu to
skonfigurowana pod kątem przekazywania pisma odręcznego do działającego pola do wprowadzania danych. Przykład:
implementacji, zobacz
HandwritingDetectorSample.kt
Tryb pisma odręcznego rysikiem uruchamia się, gdy odpowiednie pole wprowadzania danych
tworzy
InputConnection
Testowanie
Pismo odręczne rysikiem jest obsługiwane na urządzeniach z Androidem 14 i nowszym zgodnego rysika i metody wprowadzania tekstu edytorem (IME), który obsługuje interfejsy API pisma odręcznego rysikiem w Androidzie 14.
Jeśli nie masz urządzenia wejściowego rysika, symuluj wprowadzanie nim na dowolnym urządzeniu z dostępem na poziomie roota (w tym za pomocą emulatorów) przy użyciu poniższego narzędzia Android Debug Bridge. (adb):
// Android 14
adb shell setprop persist.debug.input.simulate_stylus_with_touch true && adb shell stop && adb shell start
// Android 15 and higher
// Property takes effect after screen reconfiguration such as orientation change.
adb shell setprop debug.input.simulate_stylus_with_touch true
Używaj Gboard w wersji beta do testowania, jeśli używasz urządzenia, które nie obsługuje rysik.
Dodatkowe materiały
- Material Design – pola tekstowe
- Obsługa danych wejściowych użytkownika