【问题标题】:Keyboard hides Textarea inside a Hybrd Webview in Xamarin forms键盘将 Textarea 隐藏在 Xamarin 表单中的混合 Webview 中
【发布时间】:2018-03-03 13:38:12
【问题描述】:

在 xamarin 表单中,我使用混合 webview 来显示 texarea 和输入字段。当我尝试在 textarea 内输入一些数据时,键盘会弹出并隐藏 textarea。
因此我无法看到我正在输入的文本。它不会自动滚动到当前光标位置。我已阅读添加
android:windowSoftInputMode="adjustResize" 到 android 清单文件就可以了。
但是是否可以仅将上述属性应用于 webview(而不应用其他视图)?或者有没有其他方法可以自动滚动视图,以便输入字段(光标)就在键盘上方。
请帮忙

【问题讨论】:

  • 将您的混合网络视图置于滚动视图中。
  • 我试过了,但没用。还有其他方法吗? @ZiyadGodil
  • 您找到解决方案了吗?

标签: android webview xamarin.forms xamarin.android


【解决方案1】:

在App.xaml.cs你可以添加:

using AndroidSpecific = Xamarin.Forms.PlatformConfiguration.AndroidSpecific;

public App()
{
    InitializeComponent();
    AndroidSpecific.Application.SetWindowSoftInputModeAdjust(this, AndroidSpecific.WindowSoftInputModeAdjust.Resize);
    …

我认为这不像 Artūras Paleičikas 的 answer 那样惯用,但效果相同。

【讨论】:

  • 我做到了,但做不到
【解决方案2】:

怎么样:

protected override void OnCreate(Bundle savedInstanceState)
{
...

 global::Xamarin.Forms.Application.Current.On<Xamarin.Forms.PlatformConfiguration.Android>()
                .UseWindowSoftInputModeAdjust(WindowSoftInputModeAdjust.Resize);

【讨论】:

    【解决方案3】:

    查看https://docs.microsoft.com/en-us/xamarin/xamarin-forms/platform/platform-specifics/consuming/android#setting-the-soft-keyboard-input-mode的文档

    我觉得用起来比较好:

    <Application ...
        xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
        android:Application.WindowSoftInputModeAdjust="Resize">
        ...
    </Application>
    

    【讨论】:

      【解决方案4】:

      将您的 webview 放在滚动视图中并处理焦点功能,这有助于我在 xamarin forms ios 应用程序中使用。

        private void Handle_Focused(object sender, Xamarin.Forms.FocusEventArgs e)
        {
            SCr_View.ScrollToAsync(0, Web_View.Y * 50, false); // 50 is height u want to move up
        }
      

      试试这个。

      【讨论】:

      • 想法是当您的文本区域被点击或聚焦时,我们需要从外部移动或更改您的文本区域的高度,以便您可以使用滚动视图以获得更好的 GUI。
      猜你喜欢
      • 2017-05-23
      • 2018-02-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-29
      • 2020-10-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多