2

我有一个带有 FreshMvvm 的 Xamarin.Forms 应用程序,并且正在尝试使用辅助 ToolbarItems。这是我的 PageModel 代码的一部分:

  public override void Init(object initData)
  {
      CurrentPage.ToolbarItems.Add(new ToolbarItem() { Text = "About LATICRETE", Command = AboutCommand, Priority = 0, Order = ToolbarItemOrder.Secondary });
      CurrentPage.ToolbarItems.Add(new ToolbarItem() { Text = "Call LATICRETE", Command = CallCommand, Priority = 0, Order = ToolbarItemOrder.Secondary });
      CurrentPage.ToolbarItems.Add(new ToolbarItem() { Text = "Email Technical Support", Command = EmailTechSupportCommand, Priority = 0, Order = ToolbarItemOrder.Secondary });
      CurrentPage.ToolbarItems.Add(new ToolbarItem() { Text = "Visit LATICRETE Website", Command = VisitWebsiteCommand, Priority = 0, Order = ToolbarItemOrder.Secondary });

对于 Android,按下汉堡按钮后,菜单看起来像我期望的那样:

在此处输入图像描述

但在 iPhone 上,情况完全不同:

在此处输入图像描述

正如你所看到的,没有汉堡按钮,所有的 ToolbarItems 水平放置,彼此相邻,并且由于它们不适合屏幕的宽度,因此它们重叠。我意识到这是 iOS 的正常行为,但我无法接受。有什么办法可以解决吗?

4

1 回答 1

3

在 iOS 上,Secondary项目菜单作为水平列表显示在导航栏下方。

如果你想达到 Android 中的效果,你可以创建一个自定义的PageRenderer.

这是一个示例,您可以参考它iOSSecondaryToolbarMenubar

Android中的效果:

在此处输入图像描述

ios中的效果(您可以更改渲染器中的图标):

1)第一页有工具栏项: 在此处输入图像描述

2)所有页面都有工具栏项:

在此处输入图像描述

于 2020-01-06T02:47:16.403 回答