2014-12-24 50 views
0

如何更改操作欄的顏色並獲取水平線?xamarin表單 - 操作欄顏色

我有一個成功的android應用程序開發的本地xamarin機器人。現在我試圖使用xaml方法將它移植到Xamarin Forms。

我創建了一個hello world應用程序,並在contentPage中添加了一個工具欄項。當我最初啓動應用程序時,操作欄顯示爲我的圖標,正常的藍綠色背景,並且有一條很好的水平線。但是,一旦我的表單代碼投入使用,它會顯示我的圖標,我的toolbaritem圖標,但背景是黑色的,沒有水平線。

我試過NavigationPage.BackgroundColor,並沒有任何影響。我在想我正在做一些小錯誤。

這是我的xaml。

<?xml version="1.0" encoding="utf-8" ?> 
<ContentPage.Title> My Sample </ContentPage.Title> 

<ContentPage.ToolbarItems> 
     <ToolbarItem Name="test" Icon="ic_action_refresh" ></ToolbarItem> 
    </ContentPage.ToolbarItems> 


<Label Text="Hello Forms" VerticalOptions="Center" HorizontalOptions="Center" /> 

</ContentPage> 

這裏是我的app.cs

public class App 
{ 
public static Page GetMainPage() 
{ 
    var nav = new NavigationPage(new Splash()); 
    nav.BackgroundColor = Color.Teal; 
    return nav; 
} 
} 

我也想在啓動時隱藏默認動作條,並採用了全閃屏去,但我沒有找到這個主題看起來像會工作。 http://forums.xamarin.com/discussion/18290/hiding-the-status-bar-and-the-action-bar-in-android-app

+0

嘗試設置NavigationPage.BarBackgroundColor – StefanoM5

回答

0

我想通了。我在VS2013中使用了默認模板,Xamarin.Forms.Core庫引用是1.0版本。此後有幾次更新,其中一個更正了這個問題。我剛剛通過nuget更新到最新版本,並開始工作。

0

生成NavigationPage時,我用了以下方法獲得了很多運氣,關鍵是BarBackgroundColor屬性是設置條本身顏色的關鍵。底層邊框也應該存在。你也可以使用你喜歡的任何顏色的方法,而不僅僅是FromHex方法。

private Page GetNavigationPage(Page innerPage){ 
    var navigation = new NavigationPage (innerPage); 
    navigation.BarBackgroundColor= Color.FromHex ("#00263A"); 
     return navigation; 
} 
0

這就是我所做的。

在App.xaml中,加上下面幾行,它工作在iOS和Android的

<Style TargetType="NavigationPage"> 
<Setter Property="BarBackgroundColor" Value="whatever color value here"/> 
</Style>