状态栏叠加图像向下移动 android 没用

Status bar overlay image shifted down in android nought

我正在尝试将图像添加到 xamarin 表单中的状态栏 android.. 但是图像完全向下移动并进入我在 android 牛轧糖中设置的正常状态栏颜色。

这发生在我将 xamarin 表单版本更新到 2.4.0.74863 时 在 2.3.4.270 中它工作正常。这是 xamrin 表单问题还是我的代码问题。

我用来在状态栏上绘制叠加层的代码是

activity.Window.AddFlags(WindowManagerFlags.DrawsSystemBarBackgrounds);
                activity.Window.ClearFlags(WindowManagerFlags.TranslucentStatus);
                activity.Window.SetStatusBarColor(Android.Graphics.Color.Transparent);

ViewGroup contentView = (ViewGroup)activity.FindViewById(Android.Resource.Id.Content);
            //if (contentView.ChildCount > 1)
            //{
            //  contentView.RemoveViewAt(1);
            //}

            // get status bar height
            int res = activity.Resources.GetIdentifier("status_bar_height", "dimen", "android");
            int height = 0;
            if (res != 0)
                height = activity.Resources.GetDimensionPixelSize(res);


            // create new imageview and set resource id
            ImageView image = new ImageView(activity);
            LinearLayout.LayoutParams params1 = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, height);
            params1.Width = LinearLayout.LayoutParams.MatchParent;
            image.LayoutParameters = params1;
            image.SetImageResource(imageRes);

            image.SetScaleType(ImageView.ScaleType.FitXy);

            // add image view to content view
            contentView.AddView(image);
            contentView.SetFitsSystemWindows(true);

我将其称为 xaml 页面的依赖关系。

编辑

在我添加@york 提到的标志后,底部导航栏变得半透明并且应用程序视图下降。

只需在您的 Activity 样式中添加以下代码即可:

<style name="MyTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar">
    ...
    <item name="android:windowTranslucentStatus">false</item>
    <item name="android:windowTranslucentNavigation">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

效果: