Androidテーマの背景色の設定


105

デフォルトの背景テーマの色を変更しようとしています。これは簡単なはずですが、意外にも機能させることができません。変更を1つのアクティビティだけでなく、アプリ全体に適用したいことに注意してください。これが私のコードです:

styles.xml

<resources>

    <color name="white_opaque">#FFFFFFFF</color>
    <color name="pitch_black">#FF000000</color>

    <style name="AppTheme" parent="android:Theme.Light">
        <item name="android:background">@color/white_opaque</item>
        <item name="android:windowBackground">@color/white_opaque</item>
        <item name="android:colorBackground">@color/white_opaque</item>
    </style>

</resources>

そしてもちろんマニフェストで

<application
    .
    .
    .
    android:theme="@style/AppTheme" > 
</application>

テーマの変更について相談したAndroidドキュメント:http : //developer.android.com/guide/topics/ui/themes.html

すべてのxml属性についてwhite_opaqueとpitch_blackを切り替えてみましたが、変更はありません。助言がありますか?


1
アルファチャネルを削除してみる
Blundell

申し訳ありませんが、今でも同じです。
スターク

1
これは私が読んだ最高のソリューションです stackoverflow.com/a/33213433/963543
アタIravani

回答:


58

さて、私は本当にばかげた間違いをしたことがわかりました。テストに使用しているデバイスは、Android 4.0.4、APIレベル15を実行しています。

編集していたstyles.xmlファイルは、デフォルト値フォルダーにあります。values-v14フォルダーのstyles.xmlを編集したところ、問題なく動作しました。


4
または、他のスタイルフォルダーを使用していない場合は、それらを削除することもできます。同じ問題があり、「values」フォルダー内の1つのstyles.xmlで修正しました。私の問題は、マニフェストファイルにアクティビティのテーマアイテムがあったことです(もちろん、これはAppThemeを上書きしました)。
Stephen Hosking 2013

28
<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="android:Theme.Holo.NoActionBar">
        <item name="android:windowBackground">@android:color/black</item>
    </style>

</resources>

5

開いてres -> values -> styles.xml<style>この行を画像パスに置き換えて追加します<item name="android:windowBackground">@drawable/background</item>。例:

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:windowBackground">@drawable/background</item>
    </style>

</resources>

また<item name ="android:colorBackground">@color/black</item>、メインウィンドウの背景だけでなく、アプリ内のすべてのコンポーネントにも影響します。テーマのカスタマイズについてはこちらをお読みください

バージョン固有のスタイルが必要場合:

新しいバージョンのAndroidに使用したいテーマ属性が追加されている場合は、古いバージョンとの互換性を維持しながら、それらをテーマに追加できます。必要なのは、リソースバージョン修飾子を含むvaluesディレクトリに保存された別のstyles.xmlファイルだけです。例えば:

res/values/styles.xml        # themes for all versions
res/values-v21/styles.xml    # themes for API level 21+ only

values / styles.xmlファイルのスタイルはすべてのバージョンで使用できるため、values-v21 / styles.xmlのテーマはそれらを継承できます。そのため、「ベース」テーマから始めて、バージョン固有のスタイルに拡張することで、スタイルの重複を回避できます。

詳細はこちら(テーマ別ドキュメント)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.