Xamarin表单Android工具栏文字颜色

时间:2018-08-28 17:54:17

标签: xamarin.forms xamarin.android

工具栏颜色默认为白色,我想将其更改为蓝色。我几乎可以更改所有内容,但不能更改。

Toolbar.axml

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?attr/colorPrimary"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    android:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> 

styles.xml

<style name="MyTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar">
       <item name="android:textColorPrimary">#1b2b32</item>
      <item name="android:textColorSecondary">#1c4d9e</item>

logout text is always in white

2 个答案:

答案 0 :(得分:2)

有两种可能的方法:

  • 您更改了BarBackgroundColor中的BarTextColorNavigationPage。在您的情况下,将是这样的:

MainPage = new NavigationPage(new YourPage())
{
      BarBackgroundColor = Color.White,
      BarTextColor = Color.Blue
};
  • 另一种方法是设置您的Android样式。您已经在这样做,但是我认为这是错误的。代替android:textColorPrimary android:textColorSecondary`,尝试类似的事情:

<style name="MyTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">#FFFFFF</item>
    <item name="colorSecondary">#0000FF</item>
    <item name="colorAccent">#0000FF</item>
</style>

我认为可能是android:的问题,因为我的行为与我所说的完全一样,并且正在工作。

答案 1 :(得分:1)

我找到了一种方法。它与我在那里读到的所有答案都混杂在一起。 我用这个答案 Change color of ToolBarItem in XAML @吉列尔莫·丹尼尔·阿里亚斯。 在styles.XML上

<item name="android:actionMenuTextColor">#1c4d9e</item>

在App.xml上(在xamarin表单共享项目上)

 <Style TargetType="NavigationPage">
        <Setter Property="BarBackgroundColor" Value="White"/>
        <Setter Property="BarTextColor" Value="#004895"/>
        </Style>

enter image description here