Xamarin ContentView 渲染器隐藏内容

Xamarin ContentView renderer hides Content

我有这样的class:

          public class MetroButton: ContentView
        {

            public MetroButton ()
            {
                //create and filling mainGrid
                this.Content = mainGrid;
            }
        }

这工作正常。但是当我渲染我的 ContentView (MetroButton) - 内容未显示(内容消失,只剩下主控件)。

我的渲染:

[assembly: ExportRenderer (typeof(MetroButton), typeof(RendererToClickView))]

...

public class RendererToClickView:ViewRenderer
{
    public RendererToClickView ()
    {

    }
}

没有ContentViewRenderer。尝试使用 FrameRenderer 并禁用边框绘制。效果不错(自己试过)

    public class MyFrame : Frame
    {
        public MyFrame()
        {
            Content = new Label() {
                Text = "Test"
            };
            BackgroundColor = Color.Transparent;
            OutlineColor = Color.Transparent;
        }
    }

[assembly: ExportRenderer (typeof (MyFrame), typeof (MyFrameRenderer))]
namespace YourAssembly.Droid
{
    public class MyFrameRenderer : FrameRenderer
    {
        public MyFrameRenderer()
        {

        }
    }
}

您不需要为此创建 FrameRendererContentView的renderer是ViewRenderer,在link:

中可以看出

你可以这样做:

[Assembly: ExportRenderer (typeof (ImageGallery), typeof (ImageGalleryRenderer))]
Namespace MRV.AppClient.Mobile.Droid.CustomRenderers
{
     Class ImageGalleryRenderer: ViewRenderer
     {
         Protected override void JavaFinalize ()
         {
             ImageService.Instance.InvalidateMemoryCache ();
             Base.JavaFinalize ();
         }
     }
}