安卓開發學習-按鈕控制元件

江城qwe發表於2024-03-10

java程式碼

點選檢視程式碼
package com.android.myapp;

import android.annotation.SuppressLint;
import android.os.Bundle;
import android.widget.CheckBox;
import android.widget.RadioGroup;
import android.widget.Switch;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;

public class ButtonActivity extends AppCompatActivity {

    @SuppressLint("MissingInflatedId")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_button);

        // 獲取 CheckBox 控制元件
        CheckBox ck_btn = findViewById(R.id.ck_btn);
        ck_btn.setOnCheckedChangeListener((buttonView, isChecked) -> {
            // 根據勾選狀態設定文字
            if (isChecked) {
                buttonView.setText("勾選");
            } else {
                buttonView.setText("未勾選");
            }
        });

        // 獲取 Switch 控制元件
        @SuppressLint("UseSwitchCompatOrMaterialCode") Switch sc_btn = findViewById(R.id.sc_btn);
        sc_btn.setOnCheckedChangeListener((buttonView, isChecked) -> {
            // 根據開關狀態設定文字
            if (isChecked) {
                buttonView.setText("開啟");
            } else {
                buttonView.setText("關閉");
            }
        });

        // 獲取 RadioGroup 控制元件和顯示結果的 TextView
        RadioGroup rg_btn = findViewById(R.id.rg_btn);
        TextView tv_rg_btn_res = findViewById(R.id.tv_rg_btn_res);

        rg_btn.setOnCheckedChangeListener((group, checkedId) -> {
            // 根據選中的單選按鈕設定文字
            if (checkedId == R.id.case_1) {
                tv_rg_btn_res.setText("你選擇了選項一");
            } else if (checkedId == R.id.case_2) {
                tv_rg_btn_res.setText("你選擇了選項二");
            }
        });
    }
}

xml配置檔案

點選檢視程式碼
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="20dp"
    tools:context=".ButtonActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="勾選按鈕">

    </TextView>

    <CheckBox
        android:id="@+id/ck_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

    </CheckBox>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="開關按鈕">

    </TextView>

    <Switch
        android:id="@+id/sc_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

    </Switch>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="選擇按鈕">

    </TextView>

    <RadioGroup
        android:id="@+id/rg_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <RadioButton
            android:id="@+id/case_1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="選項一">

        </RadioButton>

        <RadioButton
            android:id="@+id/case_2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="選項二">

        </RadioButton>

    </RadioGroup>

    <TextView
        android:id="@+id/tv_rg_btn_res"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

    </TextView>
</LinearLayout>

效果圖

image

相關文章