📜  如何在Android中使用CheckBox

📅  最后修改于: 2021-05-10 13:47:46             🧑  作者: Mango

CheckBox属于android.widget.CheckBox类。 Android CheckBox类是CompoundButton类的子类。它通常用于用户可以从给定选项列表中选择一个或多个选项的地方。例如,选择爱好。

public class CheckBox extends CompoundButton

类层次结构:

java.lang.Object
   ↳  android.view.View
        ↳  android.widget.TextView
             ↳  android.widget.Button
                  ↳  android.widget.CompoundButton
                       ↳  android.widget.CheckBox

它具有两种状态-选中或未选中

CheckBox类的方法

  • public boolean isChecked():如果CheckBox处于选中状态,则返回true,否则返回false。
  • public void setChecked(boolean status):更改CheckBox的状态。

下面是一个示例代码,用户可以通过CheckBox从给定的列表中选择自己的兴趣爱好,其中包括绘画,阅读,唱歌和烹饪。

主要活动。Java

//Below is the code for MainActivity.java
package com.geeksforgeeks.gfg.checkbox;
  
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.Toast;
  
public class MainActivity extends AppCompatActivity {
    CheckBox ch, ch1, ch2, ch3;
  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
  
        // Binding MainActivity.java with activity_main.xml file
        setContentView(R.layout.activity_main);
  
        // Finding CheckBox by its unique ID
        ch=(CheckBox)findViewById(R.id.checkBox);
        ch1=(CheckBox)findViewById(R.id.checkBox2);
        ch2=(CheckBox)findViewById(R.id.checkBox3);
        ch3=(CheckBox)findViewById(R.id.checkBox4);
    }
  
    // This function is invoked when the button is pressed.
    public void Check(View v)
    {
        String msg="";
  
        // Concatenation of the checked options in if
          
        // isChecked() is used to check whether 
        // the CheckBox is in true state or not.
  
        if(ch.isChecked())        
            msg = msg + " Painting ";
        if(ch1.isChecked())
            msg = msg + " Reading ";
        if(ch2.isChecked())
            msg = msg + " Singing ";
        if(ch3.isChecked())
            msg = msg + " Cooking ";
  
        // Toast is created to display the 
        // message using show() method.
        Toast.makeText(this, msg + "are selected", 
                       Toast.LENGTH_LONG).show();
    }
}

activity_main.xml

activity_main.xml具有一个TextView,4个复选框和一个按钮.TextView提示用户选择他/她的爱好。
首先,用户选择其选择,然后按Submit(提交)按钮。按下提交按钮后,将生成一个烤面包,显示所选的爱好。




  
    
        android:layout_width="match_parent"
  
        
        android:layout_height="wrap_content"
  
        
        android:layout_marginEnd="8dp"
  
        
        android:layout_marginStart="8dp"
  
        
        android:layout_marginTop="48dp"
  
        android:text="Choose your hobbies:"
        android:textSize="24sp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
  
    
        android:layout_width="match_parent"
  
        
        android:layout_height="wrap_content"
  
        android:text="Painting"
        android:layout_marginTop="16dp"
        android:textSize="18sp" />
  
    
        android:layout_width="match_parent"
  
        
        android:layout_height="wrap_content"
  
        android:text="Reading"
        android:layout_marginTop="16dp"
        android:textSize="18sp" />
  
    
        android:layout_width="match_parent"
  
        
        android:layout_height="wrap_content"
  
        android:layout_marginTop="16dp"
        android:text="Singing"
        android:textSize="18sp"
        app:layout_constraintTop_toTopOf="@+id/textView"
        tools:layout_editor_absoluteX="382dp" />
  
    
        android:layout_width="match_parent"
  
        
        android:layout_height="wrap_content"
  
        android:text="Cooking"
        android:layout_marginTop="16dp"
        android:textSize="18sp"
        app:layout_constraintTop_toBottomOf="@+id/checkBox"
        tools:layout_editor_absoluteX="386dp" />
  
    

输出: