zoukankan      html  css  js  c++  java
  • Android控件之CheckBox、RadioButton探究

    CheckBox和RadioButton控件都只有选中和未选中状态,不同的是RadioButton是单选按钮,需要编制到一个RadioGroup中,同一时刻一个RadioGroup中只能有一个按钮处于选中状态。

    以下为CheckBox和RadioButton常用方法及说明

     

    以下为单选按钮和复选按钮的使用方法

    目录结构

     

    main.xml布局文件

    <?xml version="1.0" encoding="utf-8"?>
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width
    ="fill_parent"
    android:layout_height
    ="fill_parent"
    android:scrollbars
    ="vertical">
    <LinearLayout android:orientation="vertical"
    android:layout_width
    ="fill_parent"
    android:layout_height
    ="fill_parent">
    <!-- RadioButton控件演示 -->
    <ImageView android:id="@+id/imageView01"
    android:layout_width
    ="wrap_content"
    android:layout_height
    ="wrap_content"
    android:src
    ="@drawable/bulb_on"
    android:layout_gravity
    ="center_horizontal" />
    <RadioGroup android:id="@+id/radioGroup"
    android:orientation
    ="horizontal"
    android:layout_width
    ="wrap_content"
    android:layout_height
    ="wrap_content"
    android:layout_gravity
    ="center_horizontal">
    <RadioButton android:id="@+id/on"
    android:text
    ="开灯"
    android:layout_width
    ="wrap_content"
    android:layout_height
    ="wrap_content"
    android:checked
    ="true" />
    <RadioButton android:id="@+id/off"
    android:text
    ="关灯"
    android:layout_width
    ="wrap_content"
    android:layout_height
    ="wrap_content" />
    </RadioGroup>

    <!-- CheckBox控件演示 -->
    <ImageView android:id="@+id/imageView02"
    android:layout_width
    ="wrap_content"
    android:layout_height
    ="wrap_content"
    android:src
    ="@drawable/bulb_on"
    android:layout_gravity
    ="center_horizontal" />
    <CheckBox android:id="@+id/checkBox"
    android:text
    ="开灯"
    android:checked
    ="true"
    android:layout_width
    ="wrap_content"
    android:layout_height
    ="wrap_content"
    android:layout_gravity
    ="center_horizontal" />
    </LinearLayout>
    </ScrollView>

    CbRbActivity类 

    package com.ljq.activity;

    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.CheckBox;
    import android.widget.CompoundButton;
    import android.widget.ImageView;
    import android.widget.RadioButton;
    import android.widget.CompoundButton.OnCheckedChangeListener;

    public class CbRbActivity extends Activity {
    private ImageView imageView01=null;
    private ImageView imageView02=null;
    private CheckBox checkBox=null;
    private RadioButton on=null;//开灯

    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    imageView01
    =(ImageView)findViewById(R.id.imageView01);
    imageView02
    =(ImageView)findViewById(R.id.imageView02);
    checkBox
    =(CheckBox)findViewById(R.id.checkBox);
    on
    =(RadioButton)findViewById(R.id.on);

    on.setOnCheckedChangeListener(listener);
    checkBox.setOnCheckedChangeListener(listener);
    }

    OnCheckedChangeListener listener
    =new OnCheckedChangeListener(){

    public void onCheckedChanged(CompoundButton buttonView,
    boolean isChecked) {
    if(buttonView instanceof RadioButton){
    imageView01.setImageResource(isChecked
    ?R.drawable.bulb_on:R.drawable.bulb_off);
    }
    else if(buttonView instanceof CheckBox){
    checkBox.setText(isChecked
    ?"开灯":"关灯");
    imageView02.setImageResource(isChecked
    ?R.drawable.bulb_on:R.drawable.bulb_off);
    }
    }
    };
    }

    运行结果

  • 相关阅读:
    SQL Server中的事务日志管理(7/9):处理日志过度增长
    SQL Server中的事务日志管理(6/9):大容量日志恢复模式里的日志管理
    如何阻止SELECT * 语句
    SQL Server中的事务日志管理(5/9):完整恢复模式里的日志管理
    SQL Server中的事务日志管理(4/9):简单恢复模式里的日志管理
    SQL Server中的事务日志管理(3/9):事务日志,备份与恢复
    SQL Server中的事务日志管理(2/9):事务日志架构概述
    在SQL Server里如何进行页级别的恢复
    SQL Server中的事务日志管理(1/9):事务日志概况
    第24/24周 数据库维护(Database Maintenance)
  • 原文地址:https://www.cnblogs.com/linjiqin/p/1960145.html
Copyright © 2011-2022 走看看