首页 > 解决方案 > 更改活动标签颜色 - Android Studio

问题描述

在我的应用程序中,我不知道活动标签的颜色如何从白色变为黑色。我想让它再次变白。我尝试了各种方法。以下是一些代码:

这是我的操作栏:

   <com.google.android.material.appbar.AppBarLayout
            android:id="@+id/appBar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize">

            <androidx.appcompat.widget.Toolbar
                android:id="@+id/toolBar"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                app:popupTheme="@style/Theme.FlikrApp"/>

        </com.google.android.material.appbar.AppBarLayout>

这是我的主题:

<resources xmlns:tools="http://schemas.android.com/tools">
    <!-- Base application theme. -->
    <style name="Theme.FlikrApp" parent="Theme.MaterialComponents.DayNight.NoActionBar">
        <!-- Primary brand color. -->
        <item name="colorPrimary">@color/primary</item>
        <item name="colorPrimaryVariant">@color/primary_dark</item>
        <item name="colorOnPrimary">@color/white</item>
        <!-- Secondary brand color. -->
        <item name="colorSecondary">@color/accent</item>
        <item name="colorSecondaryVariant">@color/accent</item>
        <item name="colorOnSecondary">@color/icons</item>
        <!-- Status bar color. -->
        <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
        <!-- Customize your theme here. -->
        <item name="android:windowBackground">@color/primary_light</item>
        <item name="icon">@color/icons</item>
        <item name="android:textColorSecondary">@color/white</item>
        <item name="android:navigationBarColor">@color/primary_dark</item>
    </style>

    <style name="Theme.FlikrApp.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>

    <style name="Theme.FlikrApp.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

    <style name="Theme.FlikrApp.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
</resources>

我在方法上也试过这个,onCreate但没有奏效:

getSupportActionBar().setTitle(Html.fromHtml("<font-color\"white\">Flikr App</font>"));

我也添加了themes这个,但什么也没有

<style name="TextAppearance.AppCompat.Widget.ActionBar.Title" parent="TextAppearance.AppCompat.Title">
    <item name="android:textColor">@color/white</item>
</style>

还尝试更改我的工具栏themepopupTheme但如果它有效,我不会写这个。

标签: javaandroidthemes

解决方案


使用材料设计主题,它会自动将状态栏着色为 colorPrimaryDark 值。根据您想要的状态栏颜色更改您的 colorDarkPrimary。

    <?xml version="1.0"?>

-<resources xmlns:tools="http://schemas.android.com/tools">

<!-- Base application theme. -->



-<style parent="Theme.MaterialComponents.DayNight.DarkActionBar" name="Theme.StairwaysToSolutions">

<!-- Primary brand color. -->


<item name="colorPrimary">@color/purple_500</item>

<item name="colorPrimaryVariant">@color/purple_700</item>

<item name="colorOnPrimary">@color/white</item>

<!-- Secondary brand color. -->


<item name="colorSecondary">@color/teal_200</item>

<item name="colorSecondaryVariant">@color/teal_700</item>

<item name="colorOnSecondary">@color/black</item>

<!-- Status bar color. -->


<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>

<!-- Customize your theme here. -->


</style>

</resources>

将此文件保存为themes.xml,然后在Manifest 中用此替换主题。

<application android:theme="@style/Theme.StairwaysToSolutions" android:supportsRtl="true" android:roundIcon="@mipmap/ic_launcher_round" android:label="@string/app_name" android:icon="@mipmap/ic_launcher" android:allowBackup="true">

推荐阅读