[英]How can I remove the line above the tab bar that shows on iOS
Here's what I am trying to remove.这是我要删除的内容。 I thought it was already removed in earlier iOS but now in 13.3 I think it's back again:我认为它已经在早期的 iOS 中被删除了,但现在在 13.3 中我认为它又回来了:
Here is the renderer code I was using before:这是我之前使用的渲染器代码:
protected override IShellItemRenderer CreateShellItemRenderer(ShellItem item)
{
var renderer = base.CreateShellItemRenderer(item);
(renderer as ShellItemRenderer).TabBar.Translucent = false;
(renderer as ShellItemRenderer).TabBar.ShadowImage = new UIImage(); // <<<<<<<
(renderer as ShellItemRenderer).TabBar.BackgroundImage = new UIImage();
UITabBar myTabBar = (renderer as ShellItemRenderer).TabBar;
foreach (var barItem in myTabBar.Items)
{
barItem.ImageInsets = new UIEdgeInsets(5, 0, 0, 0);
}
return renderer;
}
The overriden method CreateShellItemRenderer
can not get Tabbar
now , it will return null
.重写方法CreateShellItemRenderer
现在无法获取Tabbar
,它将返回null
。 Therefore code can not work .因此代码不能工作。
You can override CreateTabBarAppearanceTracker to get Tabbar in iOS 13 .As follow :您可以覆盖CreateTabBarAppearanceTracker以获取 iOS 13 中的 Tabbar。如下:
[assembly: ExportRenderer(typeof(AppShellTab.AppShell), typeof(AppShellTab.iOS.MyShellRenderer))]
namespace AppShellTab.iOS
{
public class MyShellRenderer : ShellRenderer
{
protected override IShellTabBarAppearanceTracker CreateTabBarAppearanceTracker()
{
return new MyOtherTabBarAppearanceTracker();
}
public class MyOtherTabBarAppearanceTracker : ShellTabBarAppearanceTracker, IShellTabBarAppearanceTracker
{
void IShellTabBarAppearanceTracker.SetAppearance(UITabBarController controller, ShellAppearance appearance)
{
base.SetAppearance(controller, appearance);
var tabBar = controller.TabBar;
tabBar.BackgroundImage = new UIImage();
tabBar.ClipsToBounds = true;
//tabBar.Translucent = false;
}
}
}
}
The effect :效果:
that's the Home Indicator那是主页指示器
<ContentPage ...
xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
ios:Page.PrefersHomeIndicatorAutoHidden="true">
...
</ContentPage>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.