Android Xamarin表单-如何向MasterDetailPage的顶部栏添加额外控件?

Android Xamarin表单-如何向MasterDetailPage的顶部栏添加额外控件?,android,ios,xamarin.forms,toolbar,Android,Ios,Xamarin.forms,Toolbar,请参见所附图片: 当使用带有Xamarin表单的MasterDetailPage时,如何在顶部栏(汉堡菜单/标题附近)添加项目,如图片中突出显示的项目 更准确地说,我需要将这些类型的控件添加到第二幅图像中的高亮显示区域: 使用工具栏 在工具栏中可以添加 从代码: var contentPage = new ContentPage (); page.ToolbarItems.Add (new ToolbarItem (....)); 从XAML: <ContentPage.Toolbar

请参见所附图片:

当使用带有Xamarin表单的MasterDetailPage时,如何在顶部栏(汉堡菜单/标题附近)添加项目,如图片中突出显示的项目

更准确地说,我需要将这些类型的控件添加到第二幅图像中的高亮显示区域:

使用工具栏

在工具栏中可以添加

从代码:

var contentPage = new ContentPage ();
page.ToolbarItems.Add (new ToolbarItem (....));
从XAML:

<ContentPage.ToolbarItems>
  <ToolbarItem .... />
</ContentPage.ToolbarItems>
以下论坛帖子应该对您有所帮助:

  • 使用属性可使工具栏符合您的喜好:

    • -获取或设置一个值,该值指示要在主工具栏、次工具栏或默认工具栏曲面上的哪个面上显示此ToolbarItem元素
    • -获取或设置此ToolbarItem元素的优先级
    • -获取或设置一个字符串,该字符串标识此ToolbarItem元素上显示的图像

    正如@Rohit所提到的,您可以这样做:

    private void ShowToolbarItems()
    {
    ToolbarItem toolbarItem;
    if (Device.OS == TargetPlatform.iOS)
    {
        // move layout under the status bar
        this.Padding = new Thickness(0, 20, 0, 0);
    
        toolbarItem = new ToolbarItem("Sync", "sync_icon.png", () =>
        {
            SyncService();
        }, 0, 0);
        ToolbarItems.Add(toolbarItem);
    }
    
    if (Device.OS == TargetPlatform.Android)
    {
    
        toolbarItem = new ToolbarItem("Sync", "sync_icon.png", () =>
        {
            SyncService();
        }, 0, 0);
        ToolbarItems.Add(toolbarItem);
    
    }
    
    其中“sync_icon.png”是iOS/Android/WP项目上的资源。希望这有帮助

    这里还有一篇关于Android材质设计的博文:

    <ContentPage.ToolbarItems>
            <ToolbarItem Text="{Binding EditButtonText, Mode=TwoWay}" Clicked="EditClicked" Order="Secondary" />
    </ContentPage.ToolbarItems>
    

    this.Padding=新厚度(0,20,0,0)
    是特定于平台的,您可以将它的其余部分放在Ifthank之外,感谢您(Mario Galvan)和Rohit@Rohit-我创建了带有购物车图标的工具栏项目。现在我想在购物车图标上显示徽章(产品数量)。我尝试了很多,但都没有修改它的图标,甚至没有在工具栏项中添加任何内容。请在这件事上尽你所能提供帮助。请用你所做的尝试提出一个关于这个问题的新问题。我会调查的。