2017-03-19 22 views
5

Używam TextInput dla projektu i chcę WYŁĄCZYĆ dowolny rodzaj zaznaczania tekstu lub działań takich jak (wycinanie/kopiowanie/wklejanie/udostępnianie), jak udostępniono na zrzucie ekranu poniżej.Dezaktywuj opcje na natywnym trybie wprowadzania odpowiedzi

nie jestem w stanie znaleźć coś w reakcji natywne oficjalnej dokumentacji

enter image description here

+0

stosowanie atrybutu tylko do odczytu? – mehulmpt

+1

Użyj funkcji caretHidden = {true}, jeśli chcesz wyłączyć wszystkie operacje, takie jak Cut Paste Copy. Ukryje również twój kursor. –

Odpowiedz

3

Wystarczy dać textInput atrybut editable={false}

4

Należy dodać 2 atrybuty selectTextOnFocus i editable

Na przykład:

<TextInput editable={false} selectTextOnFocus={false} /> 
+0

editable false - nie mogę nawet edytować tekstu wprowadzanego teraz - potrzebuję tych, kiedy mogę edytować, ale nie mogę skopiować/wyciąć/wkleić na tym wprowadzeniu tekstu –

+0

kiedy podaję edytowalne fałsz, jak mogę użyć TextInput. Chcę zrobić kopię/wklej opcję wyłącz, nie trzeba podawać edytowalnego = {false} – saiRam89

1

Użyj caretHidden = {true}, jeśli chcesz wyłączyć wszystkie operacje, takie jak Wytnij kopiowanie. Będzie również ukryć kursor oraz

+1

Sprawdzono Androida - wszystkie operacje * nadal pojawiają się * tak jak zwykle, jeśli zaznaczysz jakiś tekst. – rgripper

3

Ustaw pointerEvents sobie równych na rodzica View z TextInput wyłączyć dotykowych wydarzeń, rozważmy następujący przykład:

<View pointerEvents="none"> 
    <TextInput ... /> 
</View> 
+0

Wypróbuj za pomocą pointerEvents = "tylko pole" jest lepsze – Shine

+0

To jest linia graniczna [link-only answer] (// meta.stackexchange.com/q/8231). Powinieneś rozwinąć swoją odpowiedź, aby podać tu jak najwięcej informacji i użyć linku tylko w celach informacyjnych. –

+0

PointerEvent nie jest lepszym rozwiązaniem w tym scenariuszu, dodaj 'caretHidden = {true}'. –

Powiązane problemy