我们有一个Xamarin Forms视图,其中只有一个工具栏和一个WebView。
ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
Title="TestApp"
x:Class="TestApp.Client.Views.MainPage">
<ContentPage.ToolbarItems>
<ToolbarItem
Order="Primary"
Icon="ic_settings.png"
Clicked="OnSettingsClicked"
AutomationId="mnuSettings"
Priority="1"
x:Name="mnuSettings"
Text="Settings"
/>
</ContentPage.ToolbarItems>
<WebView"
Source="{Binding URL}">
</WebView>
当WebView包含HTML文本字段并且该字段成为焦点时,软键盘将打开,但隐藏该文本字段。我们目前正在使用Xamarin.Forms 3.6。我们已经尝试了很多东西,这些东西我们可以在网上找到,但是什么都没有。
当我们将WebView与Xamarin表单输入字段一起放在ScrollView中时,在显示软键盘时,输入字段会向上移动,这意味着AdjustResize行为似乎基本起作用,但不适用于WebView。 / p>
将WindowSoftInputMode设置为AdjustResize不会更改任何内容。
有人有主意吗?
答案 0 :(得分:0)
您可以通过以下步骤解决此问题:
1使用以下代码检测软键盘是否正在显示:
var inputMethodManager = (InputMethodManager)this.GetSystemService(Context.InputMethodService);
var keyboardIsShown = inputMethodManager.IsAcceptingText;
2在显示键盘时提交动画以向上滚动页面。
3隐藏键盘时提交动画以向下滚动页面。