У нас есть приложение Xamarin (Android), которое на одном этапе открывает веб-представление (Webkit.Webview не Forms.Webview). Это направляет пользователя на страницу на стороннем сайте, который был настроен для нас.Как заставить выбор типа клавиатуры в Xamarin.Webkit.Webview
Во-первых - в определенных полях ввода клавиатура, которая отображается, неверна - мы ожидаем отменной клавиатуры (т. Е. «Готово» в нижнем углу, а не «Отправить»). Я знаю, что это можно изменить, но не уверен, что это правильный способ сделать это. Должны ли это быть метаданные/текстовые входы на веб-странице, которая была изменена? Если да - , что нужно изменить для ввода текстового поля на html страницы? Только тип? то есть:
<input type="email">
Во-вторых, а не ждать третьей стороны, чтобы исправить страницу, есть способ, которым мы можем заставить WebView всегда открывать определенный тип клавиатуры?
У нас есть возможность перехватывать нажатия клавиш клавиатуры и пытаться убрать клавиатуру с возвратом в течение минуты. Но предпочел бы не вводить взломы в то, что перехватывает каждое нажатие клавиши.
Цените помощь, не уверен, что путь вперед здесь.
Благодаря
К вашему второму вопросу о форсировании типа клавиатуры это выглядит как [this] (https://forums.xamarin.com/discussion/65222/inputmethods-editorinfo-imeoptions-data-type-wrong-problem-when- overriding-oncreateinputconnection) post может по крайней мере принудительно изменить текст кнопки «Готово». Никогда не пробовал. Я знаю, для вашего первого вопроса, что разная версия Android будет радикально отличаться с точки зрения того, как они обрабатывают типы ввода и/или если они вообще их поддерживают. Это очень к сожалению. Какая самая низкая версия Android, на которую вы нацеливаетесь? – hvaughan3
Самый низкий 4.2.2. Я прочитаю сообщение, которое вы упомянули, и посмотрите, что я придумал. Я думаю, что расширение Webview - это путь вперед, просто хочу знать, какую часть его мне нужно настроить, чтобы заставить определенную мягкую клавиатуру или какие части веб-сайта мне нужно изменить – DarthJam
@ hvaughan3 - этот пост очень помог , на данный момент нам удалось найти приемлемый компромисс. Назначение outAttrs.ImeOptions = (ImeFlags) ImeAction.Next; Тем не менее, я надеялся просто отпустить клавиатуру, как это делает мягкая кнопка устройства. Невозможно увидеть параметр в перечислении. Есть идеи? Cheers – DarthJam