Можете ли вы отключить полноэкранное редактирование в ландшафте в React Native Android?

В элементе Android EditText вы можете запретить «полноэкранный режим редактирования» активироваться в альбомной android:imeOptions="flagNoExtractUi" с помощью android:imeOptions="flagNoExtractUi" (как подробно описано здесь ).

Есть ли способ воспроизвести одно и то же поведение с компонентом React Native TextInput ? Я искал документы и StackOverflow и не нашел решения.

Начиная с v0.40.0. TextInput React Native имеет prop disableFullscreenUI , который устанавливает imeOptions="flagNoExtractUi" внутренне.

<TextInput disableFullscreenUI={true} />

Одним из решений было бы написать собственный пользовательский компонент и связать его с вашим проектом React Native. В основном вы создадите пользовательский EditText который либо по умолчанию android:imeOptions="flagNoExtractUi" либо android:imeOptions="flagNoExtractUi" или для более динамичного поведения вы можете создать сеттер в своем пользовательском EditText и выставить его с помощью @ReactProp . Таким образом, вы сможете установить его через реквизиты компонента из своего проекта React Native.

Написание пользовательского компонента пользовательского интерфейса (особенно простого такого типа) довольно прямолинейно и намного проще, чем может показаться. Там есть приличная документация и множество учебных пособий.

Надеюсь это поможет.

Intereting Posts
Обновление базы данных ORMLite Genymotion не может загрузить движок VirtualBox в Windows 10 Не открывать навигационный ящик по умолчанию Выключить OnClickListener и затем включить Android: доступ к изображениям из активов / доступных папок Питание для устройств, на которых работает Jelly bean, а также версии позже Jelly bean при использовании данных приложений Откуда приходит Enum.values ​​()? Ошибка: Конфигурация с именем «по умолчанию» не найдена в Android Studio LibGdx и Gwt: нет исходного кода для типа Как рисовать часть растрового изображения через Canvas DrawBitmap Как вы можете избежать эксплойтов в играх для Android? Android Gradle Build Exception packageReleaseResources шаг в Android-библиотеке AndroidStudio – обновлено обновление Gradle Android: removeMessages (int what = 107) не поддерживается до того, как WebViewCore настроен, когда URL-адрес содержит http Некоторые устройства Android рассматривают внутреннее хранилище как SD-карты и внешнее хранилище как EXTSD