이번 시간에는 코드에서 레이아웃이나 텍스트뷰들의
배경 색상을 바꾸는 다양한 방법을 알아보겠습니다.
- 설명 -
1. 하나의 텍스트뷰와 4개의 버튼으로 구성되어있습니다.
2. 각 버튼을 누르면 텍스트뷰의 배경 색상이 바뀝니다.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:textSize="25sp"
android:layout_gravity="center_horizontal"
android:text="색상 바꾸자"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/change_color1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="20dp"
android:text="색 바꾸기1" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/change_color2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="20dp"
android:text="색 바꾸기2" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/change_color3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="20dp"
android:text="색 바꾸기3" />
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/change_color4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="20dp"
android:text="색 바꾸기4" />
</LinearLayout>
</LinearLayout>
- 설명 -
1. 각 버튼은 텍스트뷰의 배경색상을 변경합니다.
2. 첫 번째 버튼은 color.xml에 저장된 색상을 적용합니다.
3. 두 번째 버튼은 rgb 색상값을 적용합니다.
4. 세 번째 버튼은 rgb 코드값을 적용합니다.
5. 네 번째 버튼은 자체 색상을 적용합니다.
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
TextView textView;
Context context = MainActivity.this;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//초기화
textView = findViewById(R.id.textView);
Button change1 = findViewById(R.id.change_color1);
Button change2 = findViewById(R.id.change_color2);
Button change3 = findViewById(R.id.change_color3);
Button change4 = findViewById(R.id.change_color4);
//클릭이벤트
change1.setOnClickListener(this);
change2.setOnClickListener(this);
change3.setOnClickListener(this);
change4.setOnClickListener(this);
}
@Override
public void onClick(View view) {
int id = view.getId();
//color.xml에서 가져오기
if(id == R.id.change_color1){
textView.setBackgroundColor(ContextCompat.getColor(context, R.color.purple_200));
}
//rgb 색상값 적용
else if(id == R.id.change_color2){
textView.setBackgroundColor(Color.rgb(100, 200, 125));
}
//rgb 코드값 적용
else if(id == R.id.change_color3){
textView.setBackgroundColor(Color.parseColor("#E4F7BA"));
}
//자체 색상 가져오기
else if(id == R.id.change_color4){
textView.setBackgroundColor(Color.RED);
}
}
}
2022.04.02 - [안드로이드] - [안드로이드] 같은 그림 찾기 게임 만드는 방법 part1 - 화면 구성
2022.03.28 - [안드로이드] - [안드로이드] 숫자 맞추기 게임 Up&Down 만드는 방법 part1 - 화면 구성
2022.03.30 - [안드로이드] - [안드로이드] 야구게임 만드는 방법 part1 - 화면 구성 및 랜덤 숫자 생성
[안드로이드] Tab Custom Animation part2 - 탭 기능 구현 (0) | 2022.04.09 |
---|---|
[안드로이드] Tab Custom Animation part1 - 화면 구성 (0) | 2022.04.08 |
[안드로이드] RecyclerView 다중선택 하는 방법 (0) | 2022.04.06 |
[안드로이드] 같은 그림 찾기 게임 만드는 방법 part4 - 비교&완료 (0) | 2022.04.05 |
[안드로이드] 같은 그림 찾기 게임 만드는 방법 part3 - 클릭&뒤집기 (0) | 2022.04.04 |
댓글 영역