在 Xamarin.Forms iOS 上设置 z-index 的 ScrollView

Setting z-index of ScrollView on Xamarin.Forms iOS

在我的 Xamarin.Forms 应用程序中,我有一个简单的网格 - 第一行是 header,第二行是带有页面内容的滚动视图。在 header 中,我有一个底边距为负的图像(图像的一半需要超过 header,另一半需要超过滚动视图)。

问题是,当我滚动此滚动视图时,iOS 我的一半图像隐藏在滚动视图后面。

我制作了一个自定义渲染器并在 Android 设置 this.TranslationZ = -100;OnElementChanged 完成了这项工作 - 滚动时图像在滚动视图上。

在 iOS 我尝试在 OnElementChanged 中设置 Layer.AnchorPointZ = -100;Layer.Transform.Translate(0, 0, -100);Layer.ZPosition = -100; 但没有任何效果 - 我的图像仍然隐藏在滚动视图后面。

我在 Internet 上找不到任何解决方案,所以我在这里问 - 我做错了什么? 谢谢

在 iOS 渲染器中,尝试使用 LayoutSublayersOfLayer 覆盖方法来检查它是否有效,而不是在 OnElementChanged 中修改 属性 of Layer .

public override void LayoutSublayersOfLayer(CALayer layer)
{
    base.LayoutSublayersOfLayer(layer);

    layer.AnchorPointZ = -100;
    layer.Transform.Translate(0, 0, -100);
    layer.ZPosition = -100;
}