欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android控件RadioButton实现多选一功能

程序员文章站 2023-12-04 18:43:34
radiobutton实现多选一功能的方法,具体内容如下 一、简介 二、radiobutton实现多选一方法 1、将多个radiobutton放在一个radiog...

radiobutton实现多选一功能的方法,具体内容如下

一、简介

二、radiobutton实现多选一方法

1、将多个radiobutton放在一个radiogroup里面

<radiogroup
  android:id="@+id/radiogroup1"
  android:layout_width="match_parent"
  android:layout_height="wrap_content" >

  <radiobutton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="男"
   android:textcolor="#ffffff" />

  <radiobutton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="女"
   android:textcolor="#ffffff" />
 </radiogroup>

2、在radiogroup里面取出每个radiobutton

public void onclick(view v) {
    // todo auto-generated method stub
    int len = radiogroup1.getchildcount();
    for (int i = 0; i < len; i++) {
     radiobutton radio = (radiobutton) radiogroup1.getchildat(i);11     }
   }

3、检查每个radiobutton是否被选取

 if (radio.ischecked()) {

      break;
     } 

4、取出被选取的那个radiobutton里面的值

toast.maketext(activity01.this, radio.gettext(),
        toast.length_long).show();

 三、代码实例

效果图:

 代码:

fry.activity01

package fry;

import com.example.radiobuttondemo1.r;

import android.app.activity;
import android.os.bundle;
import android.view.view;
import android.view.view.onclicklistener;
import android.widget.button;
import android.widget.radiobutton;
import android.widget.radiogroup;
import android.widget.textview;
import android.widget.toast;

public class activity01 extends activity {
 private button btn_choosegender;
 private radiogroup radiogroup1;
 private textview tv_answer;

 @override
 protected void oncreate(bundle savedinstancestate) {
  // todo auto-generated method stub
  super.oncreate(savedinstancestate);
  setcontentview(r.layout.activity01);

  btn_choosegender = (button) findviewbyid(r.id.btn_choosegender);
  radiogroup1 = (radiogroup) findviewbyid(r.id.radiogroup1);
  tv_answer = (textview) findviewbyid(r.id.tv_answer);
  /*
   * radiobutton实现多选一方法
   * 1、将多个radiobutton放在一个radiogroup里面
   * 2、在radiogroup里面取出每个radiobutton 
   * 3、检查每个radiobutton是否被选取
   * 4、取出被选取的那个radiobutton里面的值
   */
  btn_choosegender.setonclicklistener(new onclicklistener() {

   @override
   public void onclick(view v) {
    // todo auto-generated method stub
    int len = radiogroup1.getchildcount();
    for (int i = 0; i < len; i++) {
     radiobutton radio = (radiobutton) radiogroup1.getchildat(i);
     if (radio.ischecked()) {
      toast.maketext(activity01.this, radio.gettext(),
        toast.length_long).show();
      break;
     }
    }
   }
  });
 }
}

/radiobuttondemo1/res/layout/activity01.xml

<?xml version="1.0" encoding="utf-8"?>
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:background="@android:color/black"
 android:orientation="vertical" >

 <textview
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:text="性别"
  android:textappearance="?android:attr/textappearancelarge"
  android:layout_gravity="center_horizontal"
  android:textcolor="#ffffff" />

 <radiogroup
  android:id="@+id/radiogroup1"
  android:layout_width="match_parent"
  android:layout_height="wrap_content" >

  <radiobutton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="男"
   android:textcolor="#ffffff" />

  <radiobutton
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="女"
   android:textcolor="#ffffff" />
 </radiogroup>

 <button 
  android:id="@+id/btn_choosegender"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:text="选择性别"
  android:textcolor="#ffffff" />
  />
  
 <textview
  android:id="@+id/tv_answer"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:text=""
  android:textappearance="?android:attr/textappearancelarge"
  android:layout_gravity="center_horizontal"
  android:textcolor="#ffffff" />
</linearlayout>

四、收获

1、

android:textcolor="#ffffff"

设置颜色,直接用#ffffff

2、

android:layout_gravity="center_horizontal"

文字居中显示

3、

radiobutton在radiogroup里面实现多选一

4、

android:background="@android:color/black"

设置黑色,系统自带颜色

5、

int len = radiogroup1.getchildcount();

radiogroup获取孩子数量

6、

radiobutton radio = (radiobutton) radiogroup1.getchildat(i);

radiogroup获取孩子

7、

if (radio.ischecked())

判断radiobutton是否被选取

8、

toast.maketext(activity01.this, radio.gettext(),toast.length_long).show();

吐司

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。