2016-08-03 3 views
1

Я новичок в Xamarin Forms. У меня проблема с NavigationPage BarBackgroundcolor в MasterDetailPage. Он не видит то же самое на каждой странице. Это проект Xamarin Forms Portable и мой код;Xamarin Forms NavigationPage BarBackgroundcolor не видит то же самое на каждой странице

<?xml version="1.0" encoding="UTF-8"?> 
<MasterDetailPage xmlns="http://xamarin.com/schemas/2014/forms" 
        xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
        xmlns:local="clr-namespace:MasterDetailPageNavigation;assembly=MasterDetailPageNavigation" 
        x:Class="MasterDetailPageNavigation.MainPage"> 
    <MasterDetailPage.Master> 
    <local:MasterPage x:Name="masterPage" BackgroundColor="#fe5722" /> 
    </MasterDetailPage.Master> 
    <MasterDetailPage.Detail> 
     <NavigationPage BarBackgroundColor="#fe5722" BarTextColor="White"> 
      <x:Arguments> 
       <local:HomePage /> 
      </x:Arguments> 
     </NavigationPage> 
    </MasterDetailPage.Detail> 
</MasterDetailPage> 

Я предполагаю, что это может быть на странице приложения. Но как? Что я могу сделать, чтобы исправить это?

+0

Что находится в вашем 'MasterDetailPageNavigation'? –

ответ

0

Вы должны установить BackgroundColor главной страницы для отображения в панели навигации. Также было бы неплохо указать его в теме для андроида, чтобы он дал вам материальный стиль.

В форуме уже много обсуждений.

1

исправить мой код с этой проблемой решена. Я установил Barbackgroundcolor на MainPage.xaml.cs

var item = e.SelectedItem as MasterPageItem; 
     if (item != null) { 
      Detail = new NavigationPage((Page)Activator.CreateInstance(item.TargetType)) 
      { BarTextColor=Color.White,BarBackgroundColor=Color.FromHex("fe5722") }; 
      masterPage.ListView.SelectedItem = null; 
      IsPresented = false; 
     }