본문 바로가기
안드로이드

안드로이드 View BackgroundColor 변경

by 코딩히어로 2022. 3. 2.
728x90

안드로이드에서 View객체의 백그라운드 색상을 지정 및 변경할 수 있는 방법으로

xml파일에 view객체를 정의할 때 지정해주는 방법 이외에 프로그램에서 Color 객체를 통해

변경하는 방법에 대해 알아보도록 하겠습니다.

 

먼저 간단하게 Layout의 배경 색상을 변경하는 것을 예로 들어보겠습니다.

LinearLayout을 다음과같이 정의하도록 합니다.

 

<LinearLayout
    android:id="@+id/1page"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">
</LinearLayout>

 

여기에서 background 색상을 지정하는 방법은 다음과 같습니다.

 

<LinearLayout
    android:id="@+id/1page"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    android:background="#ffffff">
</LinearLayout>

 

android:background라는 구문을 통해 색상표에 표시되는 흰색인

#ffffff 값을 속성값으로 지정해주면 1page Linearlayout은 하얀색의 배경을 표시하게 됩니다.

 

여기까지 만들었지만 어플이 동작하면서 동적으로 배경색이 변경되어야 한다면

예를 들어 두 개의 버튼을 놓고 활성화 시에는 검은색, 비활성화 시에는 하얀색을

표시한다고 가정하고 background의 색상을 변경하는 함수는 다음과 같습니다.

 

LinearLayout 1page;

1page = (LinearLayout) view.findViewById(R.id.1page);

1page.setBackgroundColor(Color.parseColor("#000000"));

 

1page 객체는 setBacgroundColor를 통해 색상 변경을 하며

그 인자로는 색상표의 코드인 #000000 형태의 코드를 넣어야 하는데

setBackgroundColor 함수에서는 직접적으로 받지 못하기에

Color.parseColor를 통해서 변환하여 넘겨줍니다.

 

위 방법을 사용하면 안드로이드에서 지원하는 모든 객체의 배경 색상을 변경할 수 있습니다.

728x90
반응형

댓글