Android——RadioGroup和CheckBox

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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.example.chenshuai.test322.UIActivity">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="请选择Android的开发语言是什么?"
        android:padding="10dp"/>

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

        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="C++"
            android:id="@+id/rb1"
            android:layout_marginRight="30dp"
            android:checked="true"
            />
        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="C"
            android:id="@+id/rb2"
            android:layout_marginRight="30dp"
            />
        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="JAVA"
            android:id="@+id/rb3"
            android:layout_marginRight="30dp"
            />
        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="C#"
            android:id="@+id/rb4"
            />
    </RadioGroup>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="请选择字体效果:"
        android:id="@+id/ziti"/>
    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="宋体"
        android:checked="true"
        android:id="@+id/cb_song"/>
    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="加粗"
        android:id="@+id/cb_cu"/>
    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="斜体"
        android:id="@+id/cb_xie"/>
    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="下划线"
        android:id="@+id/cb_xia"/>

</LinearLayout>

java

package com.example.chenshuai.test322;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;

public class UIActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_ui);

        RadioGroup radioGroup = (RadioGroup)findViewById(R.id.rg);

        //radiogroup的监听事件 匿名内部类
        radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(RadioGroup group, int checkedId) {

                RadioButton rb = (RadioButton) findViewById(checkedId);

                if (checkedId == R.id.rb3) {
                    Toast.makeText(UIActivity.this, "选对了", Toast.LENGTH_LONG).show();
                }
                Toast.makeText(UIActivity.this, rb.getText(), Toast.LENGTH_LONG).show();

            }
        });
        CheckBox cb_song = (CheckBox)findViewById(R.id.cb_song);
        cb_song.setOnCheckedChangeListener(new cboncheckedchangelistener());

        CheckBox cb_cu = (CheckBox)findViewById(R.id.cb_cu);
        cb_cu.setOnCheckedChangeListener(new cboncheckedchangelistener());

        CheckBox cb_xia = (CheckBox)findViewById(R.id.cb_xia);
        cb_xia.setOnCheckedChangeListener(new cboncheckedchangelistener());

        CheckBox cb_xie = (CheckBox)findViewById(R.id.cb_xie);
        cb_xie.setOnCheckedChangeListener(new cboncheckedchangelistener());

    }

    //checkbox的监听事件 内部类
    private class cboncheckedchangelistener implements CompoundButton.OnCheckedChangeListener
    {
        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

            CheckBox cb = (CheckBox)buttonView;

            if (isChecked)
            {
                Toast.makeText(UIActivity.this, "选中了"+cb.getText(), Toast.LENGTH_SHORT).show();
            }
            else
            {
                Toast.makeText(UIActivity.this, "取消选中了"+cb.getText(), Toast.LENGTH_SHORT).show();
            }

        }
    }
}

时间: 2024-10-27 06:21:54

Android——RadioGroup和CheckBox的相关文章

Android学习笔记:常用控件 RadioGroup和CheckBox

RadioGroup和CheckBox是android的常用控件,本文自做简单介绍和学习笔记,所以所用的控件样式选用android默认的样式. 先看下代码实现的效果图 图中,上面两个(male和female)为一个RadioGroup中的两个RadioButton,下面三个为CheckBox. 一个RadioGroup里面的内容只可单选,CheckBox可多选. 接下来是代码部分 布局文件代码activity_main.xml : <LinearLayout xmlns:android="

Android ExpandableListView 带有Checkbox的简单应用

expandablelistview2_groups.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height=&qu

android ListView中CheckBox错位的解决

貌似已经很晚了,但是还是想记下笔记,想让今天完满. 在ListView中加了checkBox,可是发现点击改变其选中状态的时候,发现其位置错乱.状态改变的并不是你选中的,百思不得其解.后面通过上网查资料,可是个说纷纭,但是我还是找到了解决办法. 在自定义的适配器中,对checkBox的设置如下: 记住两者的顺序,先对checkBox进行事件监听,再设置其状态.前提在布局中对checkBox的状态设为false. android ListView中CheckBox错位的解决,布布扣,bubuko.

android RadioGroup实现单选以及默认选中

本文将通过radiogroup和radiobutton实现组内信息的单选, 其中radiogroup就是将radiobutton进行分组,同一管理和控制 同时实现默认选中情况,获取默认值.效果图 具体实例如下: 1.activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.co

[Android实例] 更改CheckBox的样式

首先在styles.xml添加如下的自定义样式: <style name="mycheckbox" parent="@android:style/Widget.CompoundButton.CheckBox"> <item name="android:button">@drawable/my_checkbox</item> </style> 复制代码 my_checkbox.xml的内容为: <

Android ListView带CheckBox实现单选

这个应该是个经常会遇到的需求,网上找了很多的demo感觉说的有点太长于是自己抽空干脆记录一下,目前我实现listView带CheckBox单选主要用两种方法 1,用一个bean记录状态,每次getView的时候去判断这个bean的状态 2,判断点击的position是否跟getView的position一致,这种办法耦合性较低不建议使用 效果图: 第1种方法: 首先是我们的bean: public class Bean { private boolean isChecked; private S

Android RadioGroup和RadioButton详解

实现RadioButton由两部分组成,也就是RadioButton和RadioGroup配合使用.RadioGroup是单选组合框,可以容纳多个RadioButton的容器.在没有RadioGroup的情况下,RadioButton可以全部都选中:当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择一个.并用setOnCheckedChangeListener来对单选按钮进行监听 1 RadioGroup相关属性: 2 RadioGroup.getC

Android学习笔记——CheckBox

该工程的功能实现在一个activity中显示一个单选框和一个多选框 以下代码是MainActivity.java文件中的代码 package com.example.checkbox; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.CheckBox; import android

Android中自定义checkbox样式

1.首先在drawable文件夹中添加drawable文件checkbox_style.xml. <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/checkbox_pres