当键盘打开xamarin表单时,工具栏会上升

时间:2017-08-17 06:24:25

标签: android keyboard xamarin.forms scrollview

我想在显示软键盘的同时将工具栏显示在顶部。我尝试了windowSoftInputMode的所有选项,但没有使用它们。在将xamarin表格升级到2.3.4.247之后,这已经开始发生。以前工作得很好。

Before xamarin forms update Previous result

After xamarin forms update result

1 个答案:

答案 0 :(得分:1)

MainActivity中的代码解决了我的问题。

参考:https://gist.github.com/jimmgarrido/e36033b26f01e8da091fd321d41d991a

protected override void OnCreate(Bundle bundle)
    {
        ToolbarResource = Resource.Layout.toolbar;

        base.OnCreate(bundle);

        //Remove the status bar underlay in API 21+
        if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop)
        {
            Window.DecorView.SystemUiVisibility = 0;
            var statusBarHeightInfo = typeof(FormsAppCompatActivity).GetField("_statusBarHeight", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic);
            statusBarHeightInfo.SetValue(this, 0);
            Window.SetStatusBarColor(new Android.Graphics.Color(18, 52, 86, 255));
        }


        global::Xamarin.Forms.Forms.Init(this, bundle);
        LoadApplication(new App());

        App.Current.On<Xamarin.Forms.PlatformConfiguration.Android>().UseWindowSoftInputModeAdjust(WindowSoftInputModeAdjust.Resize);
    }