Xamarin表单android tabpage自定义渲染器不同颜色

Xamarin表单android tabpage自定义渲染器不同颜色,android,xamarin,renderer,tabbedpage,Android,Xamarin,Renderer,Tabbedpage,我正在尝试使用 最后一个选项卡的颜色不同 但是,以下代码无法工作。我怎样才能解决这个问题 protected override void OnVisibilityChanged(Android.Views.View changedView, [GeneratedEnum] ViewStates visibility) { base.OnVisibilityChanged(changedView, visibility); if(v

我正在尝试使用 最后一个选项卡的颜色不同

但是,以下代码无法工作。我怎样才能解决这个问题

protected override void OnVisibilityChanged(Android.Views.View changedView, [GeneratedEnum] ViewStates visibility)
        {
            base.OnVisibilityChanged(changedView, visibility);

            if(visibility == ViewStates.Visible)
            {
                var tabs = changedView.FindViewById<TabLayout>(Resource.Id.sliding_tabs);

                ViewGroup vg = (ViewGroup)tabs.GetChildAt(0);
                ViewGroup vgTab = (ViewGroup)vg.GetChildAt(vg.ChildCount - 1);

                for (int i = 0; i < vgTab.ChildCount; i++)
                {
                    Android.Views.View tabViewChild = vgTab.GetChildAt(i);

                    if(tabViewChild is Android.Widget.ImageView)
                    {
                        (tabViewChild as Android.Widget.ImageView).SetBackgroundColor(Android.Graphics.Color.Red);
                    }
                }
            }
        }
protectedoverride void OnVisibilityChanged(Android.Views.View changedView,[GeneratedEnum]视图状态可见性)
{
基础.OnVisibilityChanged(更改视图,可见性);
如果(可见性==ViewState.Visible)
{
var tabs=changedView.FindViewById(Resource.Id.tabs);
ViewGroup vg=(ViewGroup)选项卡。GetChildAt(0);
ViewGroup vgTab=(ViewGroup)vg.GetChildAt(vg.ChildCount-1);
对于(int i=0;i所以,解决方案非常简单

ViewGroup vg = (ViewGroup)_tabs.GetChildAt(0);
ViewGroup vgTab = (ViewGroup)vg.GetChildAt(vg.ChildCount - 1);

vgTab.SetBackgroundColor(Android.Graphics.Color.ParseColor("#E91E63"));