xamarin #xamarin.forms
#xamarin #xamarin.forms
Вопрос:
У меня есть Entry
элемент, который помещается в a ContentView
, и он ContentView
помещается в сетку. Когда это Entry
сфокусировано, клавиатура помещается поверх ContentView
того, чтобы пользователь не видел запись.
Я хотел бы знать, есть ли способ определить, является ли вид видимым, и если нет, убедитесь, что это так (запретить размещение клавиатуры над ним).
Любые мысли о том, как я мог бы это сделать.
Мне нужно, чтобы это работало конкретно на iOS, Android и Windows, похоже, не имеют этой проблемы в моем случае использования.
Комментарии:
1. Поместите представление внутри a
ScrollView
, и оно обработает перемещение записи вверх2. Android предлагает способ сделать это, режим ввода с программной клавиатуры перемещает все вверх, чтобы показать запись и клавиатуру
3. Таким образом, он работает на Android и UWP автоматически, когда находится внутри Scrollview, но не на iOS. Есть ли что-то конкретное, что я могу сделать, чтобы исправить это?
Ответ №1:
На платформе Android официальный документ предоставляет программный режим ввода с клавиатуры. См. https://docs.microsoft.com/en-us/xamarin/xamarin-forms/platform/android/soft-keyboard-input-mode за подробностями.
На платформе IOS вы можете запросить установку KeyboardOverlap в nuget IOS, а затем добавить KeyboardOverlapRenderer.Init ();
в AppDelegate для достижения эффекта в IOS.
Комментарии:
1. Частично это решает один вариант использования, но не решает его в другом. Я думаю, можно с уверенностью сказать, что это работает. поэтому я отмечу это как ответ.