如何使用Xamarin Forms自定义渲染器隐藏Android标签?

前端之家收集整理的这篇文章主要介绍了如何使用Xamarin Forms自定义渲染器隐藏Android标签?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在Xamarin表单中,我需要编写一个自定义TabbedPageRenderer来隐藏 Android标签栏.但是,我不知道该怎么做.
[assembly: ExportRenderer(typeof(CTabbedPage),typeof(CTabbedPageRenderer))]
namespace App15.Droid
{
    public class CTabbedPageRenderer : TabbedPageRenderer
    {
        protected override void OnElementChanged(ElementChangedEventArgs<TabbedPage> e)
        {
            base.OnElementChanged(e);

            if (e.NewElement != null)
            {
                (this.Context as Activity).ActionBar.NavigationMode = ActionBarNavigationMode.Standard;
            }
        }
    }
}

代码抛出异常,因为ActionBar设置为null.我正在使用AppCompat 23.3.0和XF 2.3.2.118-pre1.

编辑:我认为ActionBar为null的原因是工具栏已经取代了它,但我仍然不知道如何隐藏选项卡.另外,我不想模块地推页面.

我也尝试添加android:visibility =“去”到Tabbar.axml.这成功地隐藏了标签栏,但标签栏仍然占据空间.

解决方法

这是一个 known bug in Xamarin: android:visibility="gone" in Tabbar.axml does not reclaim space(状态:CONFIRMED).

一旦固定,使用上述方法似乎是一种方式.

猜你在找的Android相关文章