Android 테마 배경색 설정


105

기본 배경 테마 색상을 수정하려고합니다. 쉽지만 놀랍게도 작동하지 않습니다. 단일 활동이 아닌 전체 앱에 변경이 적용되기를 원합니다. 내 코드는 다음과 같습니다.

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 2012 년

좋아, 그래도 똑같아.
스타크

1
이것이 제가 읽은 최고의 솔루션입니다. stackoverflow.com/a/33213433/963543
Ata Iravani

답변:


58

좋아요 제가 정말 어리석은 실수를 저질렀다는 것이 밝혀졌습니다. 테스트에 사용중인 기기는 Android 4.0.4, API 레벨 15를 실행 중입니다.

내가 편집하고 있던 styles.xml 파일은 기본값 폴더에 있습니다. values-v14 폴더에서 styles.xml을 편집했으며 이제 모두 정상적으로 작동합니다.


4
또는 다른 스타일 폴더를 사용하지 않는 경우 삭제할 수 있습니다. 나는 같은 문제가 있었고 'values'폴더에 하나의 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.