xamarin navigation bar not showing TitleView
Xamarin 新手,我正在尝试在我的跨平台应用程序中创建自定义导航栏。经过一番阅读,我发现我可以在我的 xaml 页面文件中使用 title-view 组件,如下所示。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | <?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="amici.MyGroups"> <NavigationPage.TitleView> <StackLayout Orientation="Horizontal" VerticalOptions="Center" Spacing="10"> <Label HorizontalOptions="StartAndExpand" Text="Left"/> <Label HorizontalOptions="CenterAndExpand" Text="Center"/> <Label HorizontalOptions="EndAndExpand" Text="Right"/> </StackLayout> </NavigationPage.TitleView> <ContentPage.Content> <ScrollView> <Grid x:Name="grid1"> <StackLayout> <Label Text="Welcome" VerticalOptions="CenterAndExpand" HorizontalOptions="CenterAndExpand" /> </StackLayout> <ActivityIndicator x:Name="WaitIcon" IsRunning="{Binding IsBusy}" VerticalOptions="Center" HorizontalOptions="Center" /> </Grid> </ScrollView> </ContentPage.Content> </ContentPage> |
我像这样导航到我的页面"MyGroups":Navigation.PushAsync(new MyGroups());.
但是,唯一显示的是带有后退图标箭头的默认导航页面?
不知不觉我错过了一些东西,或者我不明白一些东西。这需要在应用程序级别完成吗?
如果您在 Xamarin.Forms 应用程序中使用 Shell,则必须使用
1 2 3 | <Shell.TitleView> <Label Text="QR Code" HorizontalTextAlignment="End" Margin="0,0,10,0" Padding="0" VerticalTextAlignment="Center" TextColor="White" FontSize="20"/> </Shell.TitleView> |
正如 XAML 所述:
您可以将完全自定义的
如果您将导航到
您应该会看到您的自定义
中嵌套一个
我强烈建议您阅读有关此主题的官方文档,以便您清楚了解。
您也可以使用 MainPage 设置 Navigation,例如
1 | MainPage = new NavigationPage(new PageName()); |