在我的Xamarin中。表单应用程序我有一个简单的网格——一行是标题,第二行是页面内容的滚动视图。在页眉中,我有一个下边距为负的图像(图像的一半需要在页眉上,另一半在滚动视图上(。
问题是,当我滚动这个滚动视图时,在iOS上,我的一半图像隐藏在滚动视图后面。
我做了一个自定义的渲染器,在Android上设置OnElementChanged
中的this.TranslationZ = -100;
完成了这项工作——滚动时图像在滚动视图上。
在iOS上,我尝试在OnElementChanged
中设置Layer.AnchorPointZ = -100;
、Layer.Transform.Translate(0, 0, -100);
、Layer.ZPosition = -100;
,但没有成功——我的图像仍然隐藏在滚动视图后面。
我在网上找不到任何解决方案,所以我在这里问——我做错了什么?感谢
在iOS渲染器中,尝试使用LayoutSublayersOfLayer
覆盖方法来检查它是否有效,而不是在OnElementChanged
中修改Layer
的属性。
public override void LayoutSublayersOfLayer(CALayer layer)
{
base.LayoutSublayersOfLayer(layer);
layer.AnchorPointZ = -100;
layer.Transform.Translate(0, 0, -100);
layer.ZPosition = -100;
}