Przejdź do treści głównej

TextInput

Nieoficjalne Tłumaczenie Beta

Ta strona została przetłumaczona przez PageTurner AI (beta). Nie jest oficjalnie zatwierdzona przez projekt. Znalazłeś błąd? Zgłoś problem →

Podstawowy komponent do wprowadzania tekstu w aplikacji za pomocą klawiatury. Jego właściwości umożliwiają konfigurację funkcji takich jak autokorekta, automatyczne użycie wielkich liter, tekst zastępczy oraz różne typy klawiatur, np. klawiaturę numeryczną.

Najprostszy przypadek użycia to umieszczenie komponentu TextInput i subskrybowanie zdarzeń onChangeText w celu odczytania danych wprowadzanych przez użytkownika. Dostępne są również inne zdarzenia, takie jak onSubmitEditing i onFocus. Minimalny przykład:

Dwie metody udostępniane przez natywny element to .focus() i .blur(), które pozwalają programowo ustawić lub usunąć fokus z komponentu TextInput.

Należy pamiętać, że niektóre właściwości są dostępne tylko przy ustawieniu multiline={true/false}. Dodatkowo, style obramowania stosowane tylko do jednej strony elementu (np. borderBottomColor, borderLeftWidth) nie będą zastosowane, jeśli multiline=true. Aby osiągnąć ten sam efekt, można opakować komponent TextInput w View:

Domyślnie komponent TextInput posiada obramowanie u dołu widoku. Jego wypełnienie jest ustawione przez obraz tła dostarczony przez system i nie może zostać zmienione. Rozwiązania, aby tego uniknąć, to albo nieustawianie jawnej wysokości (wówczas system zadba o poprawne wyświetlenie obramowania), albo ukrycie obramowania poprzez ustawienie underlineColorAndroid na przezroczysty.

Uwaga: w systemie Android zaznaczanie tekstu w polu wprowadzania może zmienić parametr aktywności windowSoftInputMode na adjustResize. Może to powodować problemy z komponentami ustawionymi na position: 'absolute' podczas aktywnej klawiatury. Aby uniknąć tego zachowania, należy określić windowSoftInputMode w pliku AndroidManifest.xml (https://developer.android.com/guide/topics/manifest/activity-element.html) lub kontrolować ten parametr programowo za pomocą kodu natywnego.


Dokumentacja

Właściwości

Właściwości widoku

Dziedziczy właściwości widoku.


allowFontScaling

Określa, czy czcionki powinny skalować się zgodnie z ustawieniami dostępności rozmiaru tekstu. Domyślnie true.

Type
bool

autoCapitalize

Nakazuje komponentowi TextInput automatyczne używanie wielkich liter dla określonych znaków. Ta właściwość nie jest obsługiwana przez niektóre typy klawiatur, np. name-phone-pad.

  • characters: wszystkie znaki.

  • words: pierwsza litera każdego słowa.

  • sentences: pierwsza litera każdego zdania (domyślnie).

  • none: bez automatycznego używania wielkich liter.

Type
enum('none', 'sentences', 'words', 'characters')

autoComplete

Określa podpowiedzi autouzupełniania dla systemu, aby mógł dostarczać autouzupełnianie. W systemie Android system zawsze spróbuje zaproponować autouzupełnianie za pomocą heurystyk identyfikujących typ zawartości. Aby wyłączyć autouzupełnianie, ustaw autoComplete na off.

Następujące wartości działają na wszystkich platformach:

  • additional-name

  • address-line1

  • address-line2

  • birthdate-day (iOS 17+)

  • birthdate-full (iOS 17+)

  • birthdate-month (iOS 17+)

  • birthdate-year (iOS 17+)

  • cc-csc (iOS 17+)

  • cc-exp (iOS 17+)

  • cc-exp-day (iOS 17+)

  • cc-exp-month (iOS 17+)

  • cc-exp-year (iOS 17+)

  • cc-number

  • country

  • current-password

  • email

  • family-name

  • given-name

  • honorific-prefix

  • honorific-suffix

  • name

  • new-password

  • off

  • one-time-code

  • postal-code

  • street-address

  • tel

  • username

iOS

Następujące wartości działają tylko na iOS:

  • cc-family-name (iOS 17+)

  • cc-given-name (iOS 17+)

  • cc-middle-name (iOS 17+)

  • cc-name (iOS 17+)

  • cc-type (iOS 17+)

  • nickname

  • organization

  • organization-title

  • url

Android

Następujące wartości działają tylko na Androidzie:

  • gender

  • name-family

  • name-given

  • name-middle

  • name-middle-initial

  • name-prefix

  • name-suffix

  • password

  • password-new

  • postal-address

  • postal-address-country

  • postal-address-extended

  • postal-address-extended-postal-code

  • postal-address-locality

  • postal-address-region

  • sms-otp

  • tel-country-code

  • tel-device

  • tel-national

  • username-new

Type
enum('additional-name', 'address-line1', 'address-line2', 'birthdate-day', 'birthdate-full', 'birthdate-month', 'birthdate-year', 'cc-csc', 'cc-exp', 'cc-exp-day', 'cc-exp-month', 'cc-exp-year', 'cc-number', 'country', 'current-password', 'email', 'family-name', 'given-name', 'honorific-prefix', 'honorific-suffix', 'name', 'new-password', 'off', 'one-time-code', 'postal-code', 'street-address', 'tel', 'username', 'cc-family-name', 'cc-given-name', 'cc-middle-name', 'cc-name', 'cc-type', 'nickname', 'organization', 'organization-title', 'url', 'gender', 'name-family', 'name-given', 'name-middle', 'name-middle-initial', 'name-prefix', 'name-suffix', 'password', 'password-new', 'postal-address', 'postal-address-country', 'postal-address-extended', 'postal-address-extended-postal-code', 'postal-address-locality', 'postal-address-region', 'sms-otp', 'tel-country-code', 'tel-device', 'tel-national', 'username-new')

autoCorrect

Jeśli false, wyłącza automatyczną korektę. Wartość domyślna to true.

Type
bool

autoFocus

Jeśli true, automatycznie ustawia fokus na polu. Wartość domyślna to false.

Type
bool

🗑️ blurOnSubmit

Przestarzałe

Uwaga: submitBehavior zastępuje teraz blurOnSubmit i nadpisze wszelkie zachowania zdefiniowane przez blurOnSubmit. Zobacz submitBehavior.

Jeśli true, pole tekstowe straci fokus po zatwierdzeniu. Wartość domyślna to true dla pól jednoliniowych i false dla wieloliniowych. Dla pól wieloliniowych ustawienie blurOnSubmit na true oznacza, że naciśnięcie Enter spowoduje utratę fokusu i wywołanie zdarzenia onSubmitEditing zamiast wstawienia nowej linii.

Type
bool

caretHidden

Jeśli true, kursor tekstowy jest ukryty. Wartość domyślna to false.

Type
bool

clearButtonMode
iOS

Określa, kiedy przycisk czyszczenia powinien pojawić się po prawej stronie pola tekstowego. Ta właściwość jest obsługiwana tylko dla jednoliniowego komponentu TextInput. Wartość domyślna to never.

Type
enum('never', 'while-editing', 'unless-editing', 'always')

clearTextOnFocus
iOS

Jeśli true, automatycznie czyści pole tekstowe po rozpoczęciu edycji.

Type
bool

contextMenuHidden

Jeśli true, menu kontekstowe jest ukryte. Wartość domyślna to false.

Type
bool

dataDetectorTypes
iOS

Określa typy danych konwertowanych na klikalne adresy URL w polu tekstowym. Działa tylko przy multiline={true} i editable={false}. Domyślnie żadne typy danych nie są wykrywane.

Możesz podać jeden typ lub tablicę wielu typów.

Dostępne wartości dla dataDetectorTypes to:

  • 'phoneNumber'

  • 'link'

  • 'address'

  • 'calendarEvent'

  • 'none'

  • 'all'

Type
enum('phoneNumber', 'link', 'address', 'calendarEvent', 'none', 'all'), ,array of enum('phoneNumber', 'link', 'address', 'calendarEvent', 'none', 'all')

defaultValue

Dostarcza początkową wartość, która zmieni się po rozpoczęciu pisania przez użytkownika. Przydatne w przypadkach, gdy nie chcesz obsługiwać zdarzeń i aktualizować właściwości value, aby zachować zsynchronizowany stan kontrolowany.

Type
string

disableKeyboardShortcuts
iOS

Jeśli true, skróty klawiszowe (przyciski cofnij/ponów i kopiuj) są wyłączone.

TypeDefault
boolfalse

cursorColor
Android

Po podaniu ustawia kolor kursora (lub "karetki") w komponencie. W przeciwieństwie do zachowania selectionColor, kolor kursora jest ustawiany niezależnie od koloru pola zaznaczenia tekstu.

Type
color

disableFullscreenUI
Android

Gdy false, przy małej ilości miejsca wokół pola tekstowego (np. orientacja pozioma w telefonie), system operacyjny może umożliwić edycję tekstu w trybie pełnoekranowym. Gdy true, ta funkcja jest wyłączona, a użytkownicy zawsze edytują tekst bezpośrednio w polu tekstowym. Domyślnie false.

Type
bool

editable

Jeśli false, tekst nie jest edytowalny. Wartość domyślna to true.

Type
bool

enablesReturnKeyAutomatically
iOS

Jeśli true, klawiatura wyłącza klawisz return, gdy nie ma tekstu, i automatycznie go włącza, gdy tekst pojawia się. Wartość domyślna to false.

Type
bool

enterKeyHint

Określa tekst, który powinien być wyświetlany na klawiszu return. Ma pierwszeństwo przed właściwością returnKeyType.

Następujące wartości działają na wszystkich platformach:

  • done

  • next

  • search

  • send

  • go

Tylko Android

Następujące wartości działają tylko na Androidzie:

  • previous

Tylko iOS

Następujące wartości działają tylko na iOS:

  • enter
Type
enum('enter', 'done', 'next', 'previous', 'search', 'send', 'go')

importantForAutofill
Android

Informuje system operacyjny, czy poszczególne pola w Twojej aplikacji powinny być uwzględnione w strukturze widoku do celów autouzupełniania na Androidzie API Level 26+. Dopuszczalne wartości to auto, no, noExcludeDescendants, yes i yesExcludeDescendants. Wartość domyślna to auto.

  • auto: Pozwól systemowi Android użyć heurystyki do określenia, czy widok jest ważny dla autouzupełniania.

  • no: Ten widok nie jest ważny dla autouzupełniania.

  • noExcludeDescendants: Ten widok i jego elementy potomne nie są ważne dla autouzupełniania.

  • yes: Ten widok jest ważny dla autouzupełniania.

  • yesExcludeDescendants: Ten widok jest ważny dla autouzupełniania, ale jego elementy potomne nie są ważne.

Type
enum('auto', 'no', 'noExcludeDescendants', 'yes', 'yesExcludeDescendants')

inlineImageLeft
Android

Jeśli zdefiniowany, podany zasób obrazu będzie renderowany po lewej stronie. Zasób obrazu musi znajdować się w /android/app/src/main/res/drawable i być przywołany jak:

<TextInput
inlineImageLeft='search_icon'
/>
Type
string

inlineImagePadding
Android

Odstęp między wbudowanym obrazem (jeśli istnieje) a samym polem tekstowym.

Type
number

inputAccessoryViewID
iOS

Opcjonalny identyfikator, który łączy niestandardowy InputAccessoryView z tym polem tekstowym. InputAccessoryView jest renderowany nad klawiaturą, gdy to pole tekstowe jest aktywne.

Type
string

inputAccessoryViewButtonLabel
iOS

Opcjonalna etykieta, która zastępuje domyślną etykietę przycisku InputAccessoryView.

Domyślnie standardowa etykieta przycisku nie jest zlokalizowana. Użyj tej właściwości, aby dostarczyć zlokalizowaną wersję.

Type
string

inputMode

Działa jak atrybut inputmode w HTML, określa, którą klawiaturę otworzyć (np. numeric) i ma pierwszeństwo przed keyboardType.

Obsługuje następujące wartości:

  • none

  • text

  • decimal

  • numeric

  • tel

  • search

  • email

  • url

Type
enum('decimal', 'email', 'none', 'numeric', 'search', 'tel', 'text', 'url')

keyboardAppearance
iOS

Określa kolor klawiatury.

Type
enum('default', 'light', 'dark')

keyboardType

Określa, którą klawiaturę otworzyć, np. numeric.

Zobacz zrzuty ekranu wszystkich typów tutaj.

Następujące wartości działają na wszystkich platformach:

  • default

  • number-pad

  • decimal-pad

  • numeric

  • email-address

  • phone-pad

  • url

Tylko iOS

Następujące wartości działają tylko na iOS:

  • ascii-capable

  • numbers-and-punctuation

  • name-phone-pad

  • twitter

  • web-search

Tylko Android

Następujące wartości działają tylko na Androidzie:

  • visible-password
Type
enum('default', 'email-address', 'numeric', 'phone-pad', 'ascii-capable', 'numbers-and-punctuation', 'url', 'number-pad', 'name-phone-pad', 'decimal-pad', 'twitter', 'web-search', 'visible-password')

lineBreakStrategyIOS
iOS

Ustawia strategię łamania wierszy na iOS 14+. Możliwe wartości: none, standard, hangul-word, push-out.

TypeDefault
enum('none', 'standard', 'hangul-word', 'push-out')'none'

lineBreakModeIOS
iOS

Ustawia tryb łamania wierszy na iOS. Możliwe wartości: wordWrapping, char, clip, head, middle, tail.

TypeDefault
enum('wordWrapping', 'char', 'clip', 'head', 'middle', 'tail')'wordWrapping'

maxFontSizeMultiplier

Określa maksymalną skalę czcionki przy włączonym allowFontScaling. Możliwe wartości:

  • null/undefined (domyślnie): dziedziczy z węzła nadrzędnego lub globalnie (0)

  • 0: brak limitu, ignoruj ustawienia nadrzędne/globalne

  • >= 1: ustawia maxFontSizeMultiplier dla tego węzła na podaną wartość

Type
number

maxLength

Ogranicza maksymalną liczbę znaków. Używaj tego zamiast implementacji w JS, aby uniknąć migotania.

Type
number

multiline

Jeśli true, wprowadzanie tekstu może być wieloliniowe. Domyślnie false.

uwaga

Uwaga: to wyrównuje tekst do góry na iOS i do środka na Androidzie. Użyj textAlignVertical ustawionego na top dla spójnego zachowania na obu platformach.

Type
bool

numberOfLines

uwaga

numberOfLines na iOS działa tylko w Nowej Architekturze

Ustawia maksymalną liczbę wierszy dla TextInput. Używaj z właściwością multiline ustawioną na true, aby wypełniać wiersze.

Type
number

onBlur

Funkcja zwrotna wywoływana, gdy pole tekstowe traci fokus.

uwaga

Jeśli próbujesz uzyskać wartość text z nativeEvent, pamiętaj, że wynikowa wartość może być undefined, co może powodować nieoczekiwane błędy. Jeśli chcesz uzyskać ostatnią wartość TextInput, możesz użyć zdarzenia onEndEditing, które jest wywoływane po zakończeniu edycji.

Type
({nativeEvent: TargetEvent}) => void

onChange

Funkcja zwrotna wywoływana przy zmianie tekstu w polu wprowadzania.

Type
({nativeEvent: {eventCount, target, text}}) => void

onChangeText

Funkcja zwrotna wywoływana przy zmianie tekstu w polu wprowadzania. Zmieniony tekst jest przekazywany jako pojedynczy argument typu string do handlera.

Type
function

onContentSizeChange

Funkcja zwrotna wywoływana przy zmianie rozmiaru zawartości pola tekstowego.

Działa tylko dla wielowierszowych pól tekstowych.

Type
({nativeEvent: {contentSize: {width, height} }}) => void

onEndEditing

Funkcja zwrotna wywoływana po zakończeniu edycji tekstu.

Type
function

onPressIn

Funkcja zwrotna wywoływana przy rozpoczęciu dotknięcia.

Type
({nativeEvent: PressEvent}) => void

onPressOut

Funkcja zwrotna wywoływana przy zwolnieniu dotknięcia.

Type
({nativeEvent: PressEvent}) => void

onFocus

Funkcja zwrotna wywoływana, gdy pole tekstowe uzyskuje fokus.

Type
({nativeEvent: TargetEvent}) => void

onKeyPress

Funkcja zwrotna wywoływana po naciśnięciu klawisza. Przyjmuje obiekt, gdzie keyValue to 'Enter' lub 'Backspace' dla odpowiednich klawiszy, a w innych przypadkach wprowadzony znak (w tym ' ' dla spacji). Wywoływane przed callbackami onChange. Uwaga: na Androidzie obsługiwane są tylko wejścia z klawiatury ekranowej.

Type
({nativeEvent: {key: keyValue} }) => void

onLayout

Wywoływane przy montowaniu i zmianach układu.

Type
({nativeEvent: LayoutEvent}) => void

onScroll

Wywoływane przy przewijaniu zawartości. Może zawierać inne właściwości z ScrollEvent, ale na Androidzie contentSize nie jest podawane ze względów wydajnościowych.

Type
({nativeEvent: {contentOffset: {x, y} }}) => void

onSelectionChange

Funkcja zwrotna wywoływana przy zmianie zaznaczenia tekstu.

Type
({nativeEvent: {selection: {start, end} }}) => void

onSubmitEditing

Funkcja zwrotna wywoływana po naciśnięciu przycisku zatwierdzenia.

Type
({nativeEvent: {text, eventCount, target}}) => void

Uwaga: na iOS ta metoda nie jest wywoływana przy użyciu keyboardType="phone-pad".


placeholder

Tekst wyświetlany przed wprowadzeniem danych.

Type
string

placeholderTextColor

Kolor tekstu zastępczego.

Type
color

readOnly

Jeśli true, tekst jest tylko do odczytu. Domyślnie false.

Type
bool

returnKeyLabel
Android

Ustawia etykietę klawisza powrotu. Użyj zamiast returnKeyType.

Type
string

returnKeyType

Określa wygląd klawisza zatwierdzenia. Na Androidzie można też użyć returnKeyLabel.

Wiele platform

Następujące wartości działają na wszystkich platformach:

  • done

  • go

  • next

  • search

  • send

Tylko Android

Następujące wartości działają tylko na Androidzie:

  • none

  • previous

Tylko iOS

Następujące wartości działają tylko na iOS:

  • default

  • emergency-call

  • google

  • join

  • route

  • yahoo

Type
enum('done', 'go', 'next', 'search', 'send', 'none', 'previous', 'default', 'emergency-call', 'google', 'join', 'route', 'yahoo')

rejectResponderTermination
iOS

Jeśli true, pozwala komponentowi TextInput przekazywać zdarzenia dotknięcia do komponentu nadrzędnego. Umożliwia to komponentom takim jak SwipeableListView reagowanie na przesunięcia w obszarze TextInput w iOS, co domyślnie działa w Androidzie. Jeśli false, TextInput zawsze przejmuje obsługę wprowadzania danych (z wyjątkiem sytuacji, gdy jest wyłączony). Domyślną wartością jest true.

Type
bool

rows
Android

Ustawia liczbę linii dla TextInput. Użyj tego z parametrem multiline ustawionym na true, aby móc wypełnić linie.

Type
number

scrollEnabled
iOS

Jeśli false, przewijanie widoku tekstu będzie wyłączone. Domyślną wartością jest true. Działa tylko z multiline={true}.

Type
bool

secureTextEntry

Jeśli true, pole tekstowe maskuje wprowadzany tekst, aby poufne dane (np. hasła) pozostały bezpieczne. Domyślną wartością jest false. Nie działa z multiline={true}.

Type
bool

selection

Początek i koniec zaznaczenia tekstu w polu wejściowym. Ustaw tę samą wartość dla początku i końca, aby ustawić kursor.

Type
object: {start: number,end: number}

selectionColor

Kolor podświetlenia zaznaczenia, uchwytu zaznaczenia i kursora w polu tekstowym.

Type
color

selectionHandleColor
Android

Ustawia kolor uchwytu zaznaczenia. W przeciwieństwie do selectionColor, pozwala na niezależne dostosowanie koloru uchwytu od koloru zaznaczenia.

Type
color

selectTextOnFocus

Jeśli true, cały tekst zostanie automatycznie zaznaczony po uzyskaniu fokusu.

Type
bool

showSoftInputOnFocus

Gdy false, uniemożliwi to wyświetlenie klawiatury ekranowej, gdy pole uzyska fokus. Domyślną wartością jest true.

Type
bool

smartInsertDelete
iOS

Jeśli false, system iOS nie wstawi dodatkowej spacji po operacji wklejenia ani nie usunie jednej/dwóch spacji po operacji wycięcia lub usunięcia.

TypeDefault
booltrue

spellCheck
iOS

Jeśli false, wyłącza styl sprawdzania pisowni (tj. czerwone podkreślenia). Domyślna wartość jest dziedziczona z autoCorrect.

Type
bool

submitBehavior

Po naciśnięciu klawisza return:

Dla pól jednowierszowych:

  • 'newline' domyślnie ustawia się na 'blurAndSubmit'

  • undefined domyślnie ustawia się na 'blurAndSubmit'

Dla pól wielowierszowych:

  • 'newline' dodaje nową linię

  • undefined domyślnie ustawia się na 'newline'

Dla obu typów pól (jedno- i wielowierszowych):

  • 'submit' wyśle tylko zdarzenie submit i nie spowoduje rozmycia fokusu (blur)

  • 'blurAndSubmit' spowoduje zarówno rozmycie fokusu, jak i wysłanie zdarzenia submit

Type
enum('submit', 'blurAndSubmit', 'newline')

textAlign

Wyrównuje tekst wejściowy do lewej, środka lub prawej strony pola wprowadzania.

Możliwe wartości dla textAlign to:

  • left

  • center

  • right

Type
enum('left', 'center', 'right')

textContentType
iOS

Przekazuje klawiaturze i systemowi informacje o oczekiwanym znaczeniu semantycznym treści wprowadzanych przez użytkowników.

uwaga

autoComplete zapewnia tę samą funkcjonalność i jest dostępny na wszystkich platformach. Możesz użyć Platform.select dla różnych zachowań na platformach.

Unikaj używania jednocześnie textContentType i autoComplete. Dla zgodności wstecznej, textContentType ma pierwszeństwo, gdy ustawione są obie właściwości.

Możesz ustawić textContentType na username lub password, aby włączyć automatyczne wypełnianie danych logowania z pęku kluczy urządzenia.

newPassword może być użyte do wskazania nowego pola hasła, które użytkownik może chcieć zapisać w pęku kluczy, a oneTimeCode może wskazywać, że pole może być automatycznie wypełnione kodem z SMS-a.

Aby wyłączyć automatyczne wypełnianie, ustaw textContentType na none.

Możliwe wartości dla textContentType to:

  • none

  • addressCity

  • addressCityAndState

  • addressState

  • birthdate (iOS 17+)

  • birthdateDay (iOS 17+)

  • birthdateMonth (iOS 17+)

  • birthdateYear (iOS 17+)

  • countryName

  • creditCardExpiration (iOS 17+)

  • creditCardExpirationMonth (iOS 17+)

  • creditCardExpirationYear (iOS 17+)

  • creditCardFamilyName (iOS 17+)

  • creditCardGivenName (iOS 17+)

  • creditCardMiddleName (iOS 17+)

  • creditCardName (iOS 17+)

  • creditCardNumber

  • creditCardSecurityCode (iOS 17+)

  • creditCardType (iOS 17+)

  • emailAddress

  • familyName

  • fullStreetAddress

  • givenName

  • jobTitle

  • location

  • middleName

  • name

  • namePrefix

  • nameSuffix

  • newPassword

  • nickname

  • oneTimeCode

  • organizationName

  • password

  • postalCode

  • streetAddressLine1

  • streetAddressLine2

  • sublocality

  • telephoneNumber

  • URL

  • username

Type
enum('none', 'addressCity', 'addressCityAndState', 'addressState', 'birthdate', 'birthdateDay', 'birthdateMonth', 'birthdateYear', 'countryName', 'creditCardExpiration', 'creditCardExpirationMonth', 'creditCardExpirationYear', 'creditCardFamilyName', 'creditCardGivenName', 'creditCardMiddleName', 'creditCardName', 'creditCardNumber', 'creditCardSecurityCode', 'creditCardType', 'emailAddress', 'familyName', 'fullStreetAddress', 'givenName', 'jobTitle', 'location', 'middleName', 'name', 'namePrefix', 'nameSuffix', 'newPassword', 'nickname', 'oneTimeCode', 'organizationName', 'password', 'postalCode', 'streetAddressLine1', 'streetAddressLine2', 'sublocality', 'telephoneNumber', 'URL', 'username')

passwordRules
iOS

Gdy używamy textContentType jako newPassword w systemie iOS, możemy poinformować system operacyjny o minimalnych wymaganiach dotyczących hasła, aby mógł wygenerować takie, które je spełni. Aby utworzyć prawidłowy ciąg dla PasswordRules, zapoznaj się z dokumentacją Apple.

wskazówka

Jeśli okno dialogowe generowania haseł nie pojawia się, upewnij się, że:

  • Funkcja AutoFill jest włączona: UstawieniaHasła i konta → przełącznik Automatyczne wypełnianie haseł jest w pozycji "Włączone",
  • Używany jest iCloud Keychain: UstawieniaApple IDiCloudKeychain → przełącznik iCloud Keychain jest w pozycji "Włączone".
Type
string

style

Należy zauważyć, że nie wszystkie style tekstu są obsługiwane. Niepełna lista nieobsługiwanych stylów obejmuje:

  • borderLeftWidth

  • borderTopWidth

  • borderRightWidth

  • borderBottomWidth

  • borderTopLeftRadius

  • borderTopRightRadius

  • borderBottomRightRadius

  • borderBottomLeftRadius

Style

Type
Text

textBreakStrategy
Android

Ustawia strategię łamania tekstu na Androidzie w wersji API 23+. Możliwe wartości to simple, highQuality, balanced. Wartość domyślna to highQuality.

Type
enum('simple', 'highQuality', 'balanced')

underlineColorAndroid
Android

Kolor podkreślenia TextInput.

Type
color

value

Wartość wyświetlana w polu tekstowym. TextInput jest komponentem kontrolowanym, co oznacza, że natywna wartość zostanie wymuszona do dopasowania do tej właściwości value, jeśli jest podana. W większości przypadków działa to świetnie, ale w niektórych sytuacjach może powodować migotanie - częstą przyczyną jest blokowanie edycji poprzez utrzymanie tej samej wartości. Oprócz ustawienia tej samej wartości, należy ustawić editable={false} lub ustawić/aktualizować maxLength, aby zapobiec niechcianym edycjom bez migotania.

Type
string

Metody

.focus()

tsx
focus();

Wymusza ustawienie fokusa na natywnym polu wejściowym.

.blur()

tsx
blur();

Powoduje utratę fokusa przez natywne pole wejściowe.

clear()

tsx
clear();

Usuwa cały tekst z komponentu TextInput.


isFocused()

tsx
isFocused(): boolean;

Zwraca true, jeśli pole wejściowe ma aktualnie fokus; w przeciwnym przypadku false.

Znane problemy

  • react-native#19096: Nie obsługuje Androidowego onKeyPreIme.

  • react-native#19366: Wywołanie .focus() po zamknięciu klawiatury Androida przyciskiem wstecz nie powoduje ponownego wyświetlenia klawiatury.

  • react-native#26799: Nie obsługuje Androidowego secureTextEntry przy keyboardType="email-address" lub keyboardType="phone-pad".