我创建了一个标签页并将导航栏设置在底部。现在我需要隐藏特定页面上的导航栏。对于 iOS,我使用了这个 Renderer: here,但我找不到适用于 Android 的类似解决方案。我用这个试过:
public TabbedPageRendererDroid(Context context) : base(context)
{
}
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
{
base.OnElementPropertyChanged(sender, e);
if (e.PropertyName == "IsHidden")
{
TabLayout TabsLayout = null;
for (int i = 0; i < ChildCount; ++i)
{
Android.Views.View view = (Android.Views.View)GetChildAt(i);
if (view is TabLayout)
TabsLayout = (TabLayout)view;
}
if ((Element as CustomTabbedPage).IsHidden)
{
TabsLayout.Visibility = ViewStates.Invisible;
}
else
{
TabsLayout.Visibility = ViewStates.Visible;
}
}
}
这仅适用于顶部的普通导航栏,但不适用于底部导航栏,并且应用程序因以下错误而崩溃:System.NullReferenceException
。
有安卓的解决方案吗,先谢谢了。