Xamarin.Forms标题视图右侧的信息按钮

Xamarin.Forms标题视图右侧的信息按钮,xamarin,xamarin.forms,Xamarin,Xamarin.forms,我有一个Android/iOS/UWP-Xamarin.Forms应用程序。在标题视图所在的屏幕顶部,我想放置一个按钮,引导用户进入一个页面,向他们显示有关我的应用程序的更多信息 我试过: <NavigationPage.TitleView> <StackLayout> <Label Text="My App" FontSize="Large"></Label> <Image x:Name="inf

我有一个Android/iOS/UWP-Xamarin.Forms应用程序。在标题视图所在的屏幕顶部,我想放置一个按钮,引导用户进入一个页面,向他们显示有关我的应用程序的更多信息

我试过:

<NavigationPage.TitleView>

    <StackLayout>
        <Label Text="My App" FontSize="Large"></Label>

        <Image x:Name="info" 
               Source="information.png"  
               WidthRequest="20"  
               HeightRequest="20" 
           />
    </StackLayout>

</NavigationPage.TitleView>

在UWP上,除了标题视图中的MyApp外,还会显示应用程序的标题。然而在Android中,一旦我添加了自定义标题视图,应用程序的标题就不再显示了。当标题文本在两个平台上显示一次时,如何获得统一的行为

  • 您是否已将“information.png”图像添加到android资源中

  • 尝试使用OnPlatform


  • Android和UWP的默认行为不同。在Android和iOS中,如果自定义导航栏的标题视图,标题将不再显示

  • 您可以使用Evgeniy Stepanov提到的
    OnPlatform
    ,添加额外的标题标签,以在iOS和Android中显示标题

  • 您可以简单地添加一个
    工具栏项
    ,将信息按钮放置在导航栏的右侧:

    public MainPage()
    {
        InitializeComponent();
    
        Title = "My App";
    
        ToolbarItems.Add(new ToolbarItem("", "info", () => { goToInfoPage(); }, ToolbarItemOrder.Primary, 1));
    }
    
    public void goToInfoPage() {
    
    }
    
  • public MainPage()
    {
        InitializeComponent();
    
        Title = "My App";
    
        ToolbarItems.Add(new ToolbarItem("", "info", () => { goToInfoPage(); }, ToolbarItemOrder.Primary, 1));
    }
    
    public void goToInfoPage() {
    
    }