【发布时间】:2016-11-14 23:07:31
【问题描述】:
我正在构建的应用程序有问题。我在 Visual Studio 2015 社区中使用 xamarin,当我部署我的应用程序时,结果如下:
我想要的是将那条浅蓝色线与我的导航栏相匹配。我需要知道该怎么做。 提前致谢
【问题讨论】:
标签: android xamarin navigation xamarin.forms navigationbar
我正在构建的应用程序有问题。我在 Visual Studio 2015 社区中使用 xamarin,当我部署我的应用程序时,结果如下:
我想要的是将那条浅蓝色线与我的导航栏相匹配。我需要知道该怎么做。 提前致谢
【问题讨论】:
标签: android xamarin navigation xamarin.forms navigationbar
这是状态栏颜色。 这是 android 5.0 (Lolipop) API 21 及更高版本中引入的功能。
要自定义该颜色,您必须这样做:
第 1 步(Resources/values/colors.xml):
<resources>
<color name="primaryDark">#1230D2</color>
</resources>
第 2 步(资源/值/style.xml):
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimaryDark">@color/primaryDark</item>
<item name="android:windowActionModeOverlay">true</item>
</style>
第 3 步(您的活动):
[Activity(Label = "MyActivity", Theme = "@style/AppTheme")]
【讨论】:
jzeferino 的答案非常完美,仅供您在开发 Xamarin 表单应用程序时参考:
1) 转到 Resources/values/styles.xml
2) 更改名为“colorPrimaryDark”的项目的值
<!-- colorPrimaryDark is used for the status bar -->
<item name="colorPrimaryDark">#1230D2</item>
注意事项:当您使用 MasterDetailPage 时,如果您想在主页面和详细页面之间保持状态栏的颜色和样式相同,则必须将 MasterDetailPage 声明为 NavigationPage 并且将 HasNavigationBar 字段设置为 false :
public partial class MyMasterDetailPage : MasterDetailPage
{
public MyMasterDetailPage()
{
InitializeComponent();
NavigationPage.SetHasNavigationBar(this, false);
(...)
}
}
【讨论】: