CheckBox复选框控件

CheckBox复选框默认情况下是未选中状态,如果想修改这个默认值的话,可以将中的android:checked设置为true或者使用CheckBox.setChecked方法设置都可以实现复选的功能。
实现案例如下图:

在这里插入图片描述
首先配置xml文件,本项目使用的是嵌套方法,创建了两个xml文件,第一个是主xml文件,设置了textview和button,有添加了一个LinearLayout组件用来嵌套checkBox
主xml文件配置代码如下:

<TextView
    android:id="@+id/tv_1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="单选"
    android:textColor="@android:color/background_dark"
    android:textSize="33dp"

    />

<LinearLayout
    android:id="@+id/ll_checkbox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" />

<Button
    android:id="@+id/btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="提交"
    android:textSize="29dp">

</Button>
checkBox.xml配置代码如下: 在这个文件中设置了checkBOX的ID和大小,具体的功能利用Java代码实现 剩下的最主要的就是配置Mainactivity的Java了 具体代码如下: import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CheckedTextView;
import android.widget.LinearLayout;
import android.widget.Toast;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private ListcheckBoxList= new ArrayList<>();
private LinearLayout ll_checkbox;
private Button btn;

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    btn=findViewById(R.id.btn);
    btn.setOnClickListener(this);
   ll_checkbox=findViewById(R.id.ll_checkbox);
   String[] strArr={"你是学生吗?","你是否喜欢Android?","你喜欢旅游吗?","你想出国吗?"};
   for(String str:strArr){
      CheckBox checkBox= (CheckBox) View.inflate(this,R.layout.checkbox,null);
       checkBox.setText(str);
      ll_checkbox.addView(checkBox);
      checkBoxList.add(checkBox);
   };
}
@Override
public void onClick(View v) {
    String str="";
    for(CheckBox checkBox:checkBoxList){
        if(checkBox.isChecked()){
           str+=checkBox.getText().toString()+"\n";
            Toast.makeText(this,str,Toast.LENGTH_SHORT).show();

        }
    }
}

}

猜你喜欢

转载自blog.csdn.net/Arex_Li/article/details/88781659