Android——CheckBox【复选框】 点击事件与属性,用案例说明
16lz
2021-01-23
效果图:
图1:
图2:
MainActivity.java
package ccv.turbosnail.xue_xi;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.CheckBox;import android.widget.CompoundButton;import android.widget.TextView;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { private CheckBox cbSeafood,cbFruits,cbCooler,cbMeat,cbVegetables; //多选按钮 private TextView tvShow; //显示 private Button btnQueDing; //确定 private List<CheckBox> checkBoxList = new ArrayList<>(); // 多选框集合 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); // 绑定id //追加到checkBoxList中 checkBoxList.add(cbMeat); checkBoxList.add(cbFruits); checkBoxList.add(cbVegetables); checkBoxList.add(cbSeafood); checkBoxList.add(cbCooler); // 点击确定时 btnQueDing.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { StringBuffer sb = new StringBuffer(); //字符流跟字符串差不多,不过这样节省资源 for (CheckBox checkbox : checkBoxList) { //遍历一遍集合 if (checkbox.isChecked()) { //isChecked()是组件是否被选中,选中返回true,否则返回false sb.append(checkbox.getText().toString() + "\n\n"); //StringBuffer.append是字符串拼接 } } tvShow.setText(sb); } }); } private void initView() { cbCooler = findViewById(R.id.cb_cooler); cbFruits = findViewById(R.id.cb_fruits); cbMeat = findViewById(R.id.cb_meat); cbSeafood = findViewById(R.id.cb_seafood); cbVegetables = findViewById(R.id.cb_vegetables); tvShow = findViewById(R.id.tv_show); btnQueDing = findViewById(R.id.btn_Queding); }}
activity_main.xml:
<?xml version="1.0" encoding="utf-8"?><LinearLayout 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" android:orientation="vertical" tools:context=".MainActivity"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="25dp" android:padding="20dp" android:text="你喜欢吃什么?"/> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <CheckBox android:id="@+id/cb_seafood" android:layout_marginTop="30dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="海鲜"/> <CheckBox android:id="@+id/cb_fruits" android:layout_marginTop="30dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:text="水果"/> <CheckBox android:id="@+id/cb_cooler" android:layout_marginTop="30dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:text="冷饮"/> <CheckBox android:id="@+id/cb_meat" android:layout_marginTop="30dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:text="肉"/> <CheckBox android:id="@+id/cb_vegetables" android:layout_marginTop="30dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:text="蔬菜"/> </LinearLayout> <Button android:id="@+id/btn_Queding" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#0594fa" android:layout_marginTop="60dp" android:layout_gravity="center" android:textColor="#fff" android:textSize="18dp" android:text="确定"/> <View android:layout_marginTop="20dp" android:layout_width="match_parent" android:layout_height="5dp" android:background="#fc0101"/> <TextView android:id="@+id/tv_show" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:textSize="20dp"/></LinearLayout>
CheckBox 属性:
更多相关文章
- Android中如何使用基于回调的事件处理
- android 属性动画源码分析
- Android scrollview嵌套listview 滑动事件冲突的解决方法
- Android之TextView------LINK的点击事件
- Android: 用Instrumentation类发送鼠标或按键事件