본문 바로가기
  • We are looking for banner advertisers Please refer to the email below
안드로이드 스튜디오

안드로이드 스튜디오 drawble xml 색상 적용 안됨

by 크론크롱 2021. 4. 13.
반응형

4.1.1 버전부터는 테마의 기본값이 Theme.MaterialComponents.DayNight.DarkActionBar 로 변경됨에 따라 drawable 에서 지정한 색상이 적용이 안되는 경우가 있다.

 

위와같이, bt_blue.xml 을 만들어 색상을 #3a5994 색상으로 변경한 뒤,

 

백그라운드의 색상을 btn_blue로 적용하였으나, 우측의 미리보기 또는 어플리케이션을 실제 띄웠을 때, 적용이 되지않는 경우 안드로이드 스튜디오 내 앱의 테마 값을 변경해줌으로써 해결할 수 있다.

 

 

테마 파일로 이동하여, 세번째 라인의 parent 값을 "Theme.AppCompat.Light" 로 변경하여주면 정상적으로 확인이 가능하다.

 

기존소스

<resources xmlns:tools="http://schemas.android.com/tools">
    <!-- Base application theme. -->
    <style name="Theme.Sample" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
        <!-- 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>

 

변경소스

<resources xmlns:tools="http://schemas.android.com/tools">
    <!-- Base application theme. -->
    <style name="Theme.Sample" parent="Theme.AppCompat.Light">
        <!-- 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>

3번째 라인의 내용이 변경됨

 

 

값이 정상적으로 변경되었다.

 

 

찾다 찾다 stackoverflow 에서 동일한 질문이 올라와있어 찾게되었다.

stackoverflow.com/questions/65477334/android-button-background-color-not-changing-on-xml

 

Android Button background color not changing on xml

Android Stidio 4.1.1 SDK 29 (Android 10) I trying to change button background color on xml, but it doesn't changed. here's my code stackoverflow.com

 

반응형

댓글