본문 바로가기
안드로이드 자바

[JAVA][Android] checkBox 체크박스 사용하기

by teamnova 2024. 10. 5.
728x90

안녕하세요

 

오늘은 CheckBox 기능에 대해 포스팅해보겠습니다.

 

CheckBox는 사용자가 여러 항목을 선택할 수 있게 해주는 UI 컴포넌트입니다.

체크박스는 단일 또는 여러 옵션을 동시에 선택할 수 있고, 선택되면 체크 표시가 나타나며, 다시 선택하면 체크 표시가 사라집니다.

CheckBox는 여러 개의 항목 중에서 하나 이상을 선택해야 하는 경우에 유용합니다.

 

전체 코드입니다.

 

MainActivity.java

public class MainActivity extends AppCompatActivity {


  private CheckBox checkBox1;
  private CheckBox checkBox2;
  private CheckBox checkBox3;
  private Button btnShowSelected;
  private TextView tvResult;


  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    checkBox1 = findViewById(R.id.checkbox1);
    checkBox2 = findViewById(R.id.checkbox2);
    checkBox3 = findViewById(R.id.checkbox3);
    btnShowSelected = findViewById(R.id.btnShowSelected);
    tvResult = findViewById(R.id.tvResult);

    btnShowSelected.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
        StringBuilder result = new StringBuilder();

        if (checkBox1.isChecked()) {
          result.append(checkBox1.getText()).append("\n");
        }
        if (checkBox2.isChecked()) {
          result.append(checkBox2.getText()).append("\n");
        }
        if (checkBox3.isChecked()) {
          result.append(checkBox3.getText()).append("\n");
        }

        tvResult.setText(result.toString());
      }
    });

  }
}

 

 

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="16dp">

    <CheckBox
        android:id="@+id/checkbox1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="체크박스 1" />

    <CheckBox
        android:id="@+id/checkbox2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="체크박스 2" />

    <CheckBox
        android:id="@+id/checkbox3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="체크박스 3" />

    <Button
        android:id="@+id/btnShowSelected"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="확인"
        android:layout_marginTop="20dp" />

    <TextView
        android:id="@+id/tvResult"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:textSize="20sp"
        android:text="결과"/>
</LinearLayout>

 

 

체크박스 체크 유무에 따라, 결과부분에 나타내도록 했습니다.

 

checkBox의 isChecked() 메소드를 사용하여, 체크박스의 체크유무를 확인할 수 있고, 그에 따라 원하는 동작을 설정하면 됩니다.

 

 

시연 영상입니다.