Android: CheckBox trong Android

Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực

Một CheckBox là một on/off switch mà có thể được toggle bởi người dùng. Bạn có thể sử dụng checkbox khi hiển thị cho người dùng một nhóm các tùy chọn có thể lựa chọn mà không loại trừ lẫn nhau.

CheckBox trong Android

CHECKBOX

Các thuộc tính của CheckBox trong Android

Bảng dưới liệt kê một số thuộc tính quan trọng liên quan tới CheckBox:

Kế thừa từ lớp android.widget.TextView:

Thuộc tính Miêu tả
android:autoText Nếu được thiết lập, xác định rằng TextView này có một phương thức đầu vào thuần văn bản và tự động sửa các lỗi chính tả phổ biến
android:drawableBottom Đây là drawable để được vẽ dưới text
android:drawableRight Đây là drawable để được vẽ bên phải text
android:editable Nếu được thiết lập, xác định rằng TextView này có một phương thức đầu vào
android:text Đây là Text để hiển thị

Kế thừa từ lớp android.view.View:

Thuộc tính Miêu tả
android:background Đây là một drawable để sử dụng như background
android:contentMiêu tả Định nghĩa text mà miêu tả ngắn gọn nội dung của view
android:id Cung cấp một tên định danh cho view này
android:onClick Đây là tên phương thức trong ngữ cảnh View này để triệu hồi khi view được click
android:visibility Điều khiển sự nhìn thấy ban đầu của view

Ví dụ

Ví dụ sau sẽ minh họa cách tạo ứng dụng Androidd với CheckBox.

Bước Miêu tả
1 Bạn sử dụng Android Studio IDE để tạo một ứng dụng Android.
2 Sửa đổi file src/MainActivity.java để thêm một click event
2 Sửa đổi nội dung mặc định của file res/layout/activity_main.xml để bao gồm UI Control
3 Không cần làm gì đối với file strings.xml, Android Studio sẽ để ý các hằng chuỗi mặc định
4 Chạy ứng dụng để chạy Android Emulator và kiểm tra kết quả các thay đổi đã thực hiện trong ứng dụng

Sau đây là nội dung của file Main Activity:

package v1study.com.checkbox;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    Button btn1,btn2;
    CheckBox chk1,chk2;

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

        chk1=(CheckBox)findViewById(R.id.chkAndroid);
        chk2=(CheckBox)findViewById(R.id.chkV1Study);
        btn1=(Button)findViewById(R.id.btnOK);
        btn2=(Button)findViewById(R.id.btnCancel);

        btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String str="";
                str+="Thanks: "+chk1.isChecked();
                str+="\nThanks: "+chk2.isChecked();
                Toast.makeText(getApplicationContext(),str,Toast.LENGTH_LONG).show();
            }
        });

        btn2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                finish();
            }
        });
    }
}

Sau đây là nội dung của file res/layout/activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/checkboxv1study"
        android:textAllCaps="true"
        android:textColor="#8BC34A"
        android:textSize="30sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.1" />

    <ImageView
        android:layout_width="170dp"
        android:layout_height="170dp"
        android:contentDescription="@string/logo_v1study"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintHorizontal_bias="0.497"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.272"
        app:srcCompat="@drawable/logo_v1_regular" />

    <CheckBox
        android:id="@+id/chkAndroid"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/do_you_like_android"
        android:textAllCaps="false"
        android:textColor="#8BC34A"
        android:textSize="30sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.531" />

    <CheckBox
        android:id="@+id/chkV1Study"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/do_you_like_v1study"
        android:textAllCaps="false"
        android:textColor="#8BC34A"
        android:textSize="30sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintHorizontal_bias="0.549"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.618" />

    <Button
        android:id="@+id/btnCancel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@android:string/cancel"
        android:textAllCaps="true"
        android:textColor="#8BC34A"
        android:textSize="30sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintHorizontal_bias="0.82"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.767" />

    <Button
        android:id="@+id/btnOK"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@android:string/ok"
        android:textAllCaps="true"
        android:textColor="#8BC34A"
        android:textSize="30sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintHorizontal_bias="0.154"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.767" />

</androidx.constraintlayout.widget.ConstraintLayout>

Sau đây là nội dung của file res/values/strings.xml:

<resources>
    <string name="app_name">CheckboxV1Study</string>
    <string name="checkboxv1study">CheckboxV1Study</string>
    <string name="logo_v1study">Logo V1Study</string>
    <string name="do_you_like_android">Do you like Android?</string>
    <string name="do_you_like_v1study">Do you like V1Study?</string>
</resources>

 

Chạy ứng dụng:

CheckBox trong Android

Khi chọn các checkbox rồi nhấn nút OK ta được kết quả:

CheckBox trong Android

Khi nhấn nút Cancel thì ứng dụng sẽ kết thúc (tắt).

» Tiếp: ProgressBar trong Android
« Trước: RadioGroup trong Android
Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực
Copied !!!