問題
當在設計一個具有導航頁面功能的應用程式時候,若想要變更導航工具列的背景顏色,以符合這個應用程式的視覺設計,該如何處理呢?
解答
想要設計一個具有導航頁面功能的應用程式,當然需要建立一個
NavigationPage
頁面,並且在 App.xaml.cs
這個 Xamarin.Forms 的進入點 Code Behind內的方法 OnInitialized
,使用這個程式碼,告知這個應用程式,都具有導航頁面的功能 NavigationService.NavigateAsync("NaviPage/MainPage?title=Hello%20from%20Xamarin.Forms");
public partial class App : PrismApplication
{
public App(IPlatformInitializer initializer = null) : base(initializer) { }
protected override void OnInitialized()
{
InitializeComponent();
NavigationService.NavigateAsync("NaviPage/MainPage?title=Hello%20from%20Xamarin.Forms");
}
protected override void RegisterTypes()
{
Container.RegisterTypeForNavigation<MainPage>();
Container.RegisterTypeForNavigation<NaviPage>();
Container.RegisterTypeForNavigation<Next1Page>();
}
}
接著,您需要在
NavigationPage
這個頁面中,指定使用 NavigationPage.BarBackgroundColor 來指定導航工具列的背景顏色。<?xml version="1.0" encoding="utf-8" ?>
<NavigationPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:prism="clr-namespace:Prism.Mvvm;assembly=Prism.Forms"
prism:ViewModelLocator.AutowireViewModel="True"
x:Class="XFNaviBarColor.Views.NaviPage"
BarBackgroundColor="Gray"
>
<!--使用 NavigationPage.BarBackgroundColor 來指定導航工具列的背景顏色-->
</NavigationPage>