1. ホーム
  2. android

[解決済み] Appcompat 21でツールバーの色を変更する

2023-01-23 19:16:43

質問

新しい Appcompat 21 の Material Design 機能をテストしています。そのため、このようなツールバーを作成しました。

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/activity_my_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:theme="@style/ThemeOverlay.AppCompat.ActionBar"/>

で、これをメインのレイアウトファイルに入れました。

そして、このようにsupportActionBarとして設定しました。

Toolbar toolBar = (Toolbar)findViewById(R.id.activity_my_toolbar);
setSupportActionBar(toolBar);

動作はしているのですが、どういうわけかツールバーをカスタマイズする方法がよくわかりません。グレーで、テキストは黒です。背景色と文字色はどのように変更すればよいのでしょうか?

この手順を調べました。

http://android-developers.blogspot.de/2014/10/appcompat-v21-material-design-for-pre.html

色を変えるために、私は何を監督したのでしょうか?

 <style name="AppTheme" parent="Theme.AppCompat.Light">
    <item name="android:windowActionBar" tools:ignore="NewApi">false</item>
    <item name="windowActionBar">false</item>
</style>

EDIT :

この行をテーマに追加することで、背景色を変更することができました。

<item name="colorPrimary">@color/actionbar</item>
<item name="colorPrimaryDark">@color/actionbar_dark</item>

しかし、それらはテキストの色に影響を与えません。私は何が足りないのでしょうか?黒いテキストと黒いメニューボタンの代わりに、白いテキストと白いメニューボタンを希望します。

どのように解決するのですか?

これは、あなたが提供したリンクにあるすべてのものです。

のテキストを白に変更するには、テーマを変更する必要があります。

このテーマを使う

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