【问题标题】:Resize webview when I show the keyboard显示键盘时调整 webview 的大小
【发布时间】:2018-12-07 06:22:59
【问题描述】:

我创建了一个 webview (xamarin - Android),但是当我按下文本框时,键盘位于 webview 上方,并且页面底部有一个按钮。 webview 没有调整大小。在 Chrome 上,按钮位于键盘顶部

【问题讨论】:

    标签: android xamarin webview keyboard


    【解决方案1】:

    此处记录的另一个解决方案 https://forums.xamarin.com/discussion/85024/webview-doesnt-get-resized-or-panned-when-soft-keyboard-is-overlayed

    在 App.xaml.cs 的构造函数中:

    using AndroidSpecific = Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
    
    namespace yournamespace
    {
    public partial class App : Application
    {
        public App()
        {
            InitializeComponent();
            AndroidSpecific.Application.SetWindowSoftInputModeAdjust(this, AndroidSpecific.WindowSoftInputModeAdjust.Resize);
            //your init code
        }
    }
    }
    

    【讨论】:

      【解决方案2】:

      将WindowSoftInputMode = Android.Views.SoftInput.AdjustResize 添加到您的Activity 属性:

      [Activity(Label = "@string/app_name", 
          MainLauncher = true, 
          LaunchMode = Android.Content.PM.LaunchMode.SingleTop, 
          Icon = "@drawable/icon",
          WindowSoftInputMode = Android.Views.SoftInput.AdjustResize)]
      public class MainActivity : AppCompatActivity
      

      【讨论】:

      • 谢谢,但它不起作用!应用程序编译,但按钮不上去。而不是这个public class MainActivity : AppCompatActivity 我有这个public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity
      • @Luk4,能否请您分享一个可以通过在线 repo 重现问题的基本演示?
      • @Luk4,既然你使用的是Xamarin.Forms项目,你在哪里使用WebView? PCL 还是原生 Android?请发布您的代码。
      • Ésta solución funciona sólo con controles nativos de Xamarin,dentro de un WebView no tiene efecto alguno
      猜你喜欢
      • 2014-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-19
      • 2019-03-19
      相关资源
      最近更新 更多