2015-01-06 16:50:50 xrl2012 阅读数 122
  • winform基础

    主讲内容 第一讲 winform课程介绍(完结) 第二讲 Windows编程基础-hello world(完结) 第三讲Windows编程基础-常用控件(完结) 第四讲 多文档界面MDI处理和菜单组件(完结) 第五讲 Windows控件-单选、复选、图片控件(完结) 等

    4007 人正在学习 去看看 胡延亮

RadioGroup是Android组单选按钮控件。更具体地,使用提供的RadioGroup从组中只选择一个RadioButton的能力。当用户选择一个单选按钮前一个被选中,自动成为泛滥

在我们的例子中,我们将向你展示RadioGroupAndroid应用程序的使用

activity_main.xml:

 

<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="10dp"
        android:id="@+id/text"
        android:text="@string/ChoiceText" />
    
    <RadioGroup 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/text"
        android:id="@+id/myRadioGroup"
        android:background="#abf234"
        android:checkedButton="@+id/sound" >
        
        <RadioButton 
            android:layout_width="wrap_content"
        	android:layout_height="wrap_content"
        	android:id="@+id/sound"
        	android:text="@string/Sound" />
        
        <RadioButton 
            android:layout_width="wrap_content"
        	android:layout_height="wrap_content"
        	android:id="@+id/vibration"
        	android:text="@string/Vibration" />
        
        <RadioButton 
            android:layout_width="wrap_content"
        	android:layout_height="wrap_content"
        	android:id="@+id/silent"
        	android:text="@string/Silent" />
        
    </RadioGroup>
    
    <Button 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/myRadioGroup"
        android:layout_marginTop="10dp"
        android:id="@+id/chooseBtn"
        android:text="@string/Choose" />

</RelativeLayout>

的RadioGroup的基本属性是Android:checkedbutton,指定单选按钮应该是默认被选中。其他成分是从类继承。您可以从上面的代码,注意单选按钮的设置是由一个RadioGroup体现所以其组成每个配置影响单选按钮

strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">RadioGroupExample</string>
    <string name="action_settings">Settings</string>
    <string name="ChoiceText">Choose one of the radio buttons below</string>
    <string name="Sound">Sound</string>
    <string name="Vibration">Vibration</string>
    <string name="Silent">Silent</string>
    <string name="Choose">Choose</string>

</resources>


MainActivity.java:

package com.javacodegeeks.android.radiogroupexample;

import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {
	
	private RadioGroup radioGroup;
	private RadioButton sound, vibration, silent; 
	private Button button;
	private TextView textView;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		radioGroup = (RadioGroup) findViewById(R.id.myRadioGroup);
		
		radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {

			@Override
			public void onCheckedChanged(RadioGroup group, int checkedId) {
				// find which radio button is selected
				if(checkedId == R.id.silent) {
					Toast.makeText(getApplicationContext(), "choice: Silent", 
							Toast.LENGTH_SHORT).show();
				} else if(checkedId == R.id.sound) {
					Toast.makeText(getApplicationContext(), "choice: Sound", 
							Toast.LENGTH_SHORT).show();
				} else {
					Toast.makeText(getApplicationContext(), "choice: Vibration", 
							Toast.LENGTH_SHORT).show();
				}
			}
			
		});
		
		sound = (RadioButton) findViewById(R.id.sound);
		vibration = (RadioButton) findViewById(R.id.vibration);
	    silent = (RadioButton) findViewById(R.id.silent);
	    textView = (TextView) findViewById(R.id.text);
	    
	    button = (Button)findViewById(R.id.chooseBtn);
	    button.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				int selectedId = radioGroup.getCheckedRadioButtonId();
				
				// find which radioButton is checked by id
				if(selectedId == sound.getId()) {
					textView.setText("You chose 'Sound' option");
				} else if(selectedId == vibration.getId()) {
					textView.setText("You chose 'Vibration' option");
				} else {
					textView.setText("You chose 'Silent' option");
				}	
			}
	    });
	}

}

 

现在,让我们来看看上面的代码。当选中单选按钮在它的组改变时, OnCheckedChangeListener是为了处理这种情况调用。此接口的onCheckedChanged ( )方法,包括选择,导致回调的调用单选按钮的唯一ID 。

在这个例子中,我们会告诉你选择的选择信息(例如,当按下按钮)的另一种方式。这可以通过getCheckedRadioButtonId (),它是RadioGroup中类的公共函数来完成。这个方法返回从小组选择的单选按钮的唯一ID 。你可以看看代码,看看你能如何处理这两种情况。

当然, Android系统给我们提供了改变和处理的应用程序视图的属性更动态的方式。作为先决条件,是每一个映射视图中使用XML的唯一ID的组成部分。这可以通过findViewById ()方法来进行。


最效果图:


相关关键词:  
大神网
android百度网盘教程

 

相关关键词:  
大神网
android百度网盘教程



 

2011-03-16 17:35:01 LoveZhangjia521 阅读数 105
  • winform基础

    主讲内容 第一讲 winform课程介绍(完结) 第二讲 Windows编程基础-hello world(完结) 第三讲Windows编程基础-常用控件(完结) 第四讲 多文档界面MDI处理和菜单组件(完结) 第五讲 Windows控件-单选、复选、图片控件(完结) 等

    4007 人正在学习 去看看 胡延亮

单选按钮RadioButton在Android平台上也应用的非常多,比如一些选择项的时候,会用到单选按钮,实现单选按钮由两部分组成,也就是RadioButton和RadioGroup配合使用

RadioButton的单选按钮;

RadioGroup是单选组合框,用于将RadioButton框起来;

在没有RadioGroup的情况下,RadioButton可以全部都选中;

当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择一个;

 

注意:单选按钮的事件监听用setOnCheckedChangeListener来对单选按钮进行监听

例子:

一道选择题,选择哪个城市美女最多,当然,这个就是为了测试

RadioTest.java

 

package org.loulijun.radio;

import android.app.Activity;
import android.os.Bundle;
import android.view.Gravity;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;

public class RadioTest extends Activity {
    /** Called when the activity is first created. */
	TextView textview;
	RadioGroup radiogroup;
	RadioButton radio1,radio2,radio3,radio4;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        textview=(TextView)findViewById(R.id.textview1);
        radiogroup=(RadioGroup)findViewById(R.id.radiogroup1);
        radio1=(RadioButton)findViewById(R.id.radiobutton1);
        radio2=(RadioButton)findViewById(R.id.radiobutton2);
        radio3=(RadioButton)findViewById(R.id.radiobutton3);
        radio4=(RadioButton)findViewById(R.id.radiobutton4);
        
        radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
			
			@Override
			public void onCheckedChanged(RadioGroup group, int checkedId) {
				// TODO Auto-generated method stub
				if(checkedId==radio2.getId())
				{
					DisplayToast("正确答案:"+radio2.getText()+",恭喜你,回答正确!");
				}else
				{
					DisplayToast("请注意,回答错误!");
				}
			}
		});
    }
    public void DisplayToast(String str)
    {
    	Toast toast=Toast.makeText(this, str, Toast.LENGTH_LONG);
    	toast.setGravity(Gravity.TOP,0,220);
    	toast.show();
    }
}

 

 strings.xml文件

 

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="hello">哪个城市美女多?</string>
    <string name="app_name">单选按钮测试</string>
    <string name="radiobutton1">杭州</string>
    <string name="radiobutton2">成都</string>
    <string name="radiobutton3">重庆</string>
    <string name="radiobutton4">苏州</string>
</resources>

 main.xml文件:注意,这里面,4个RadioButton包含在RadioGroup中

 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    android:id="@+id/textview1"
    />
    <RadioGroup
    	android:id="@+id/radiogroup1"
    	android:layout_width="wrap_content"
    	android:layout_height="wrap_content"
    	android:orientation="vertical"
    	android:layout_x="3px"
    >
    	<RadioButton
    		android:id="@+id/radiobutton1"
    		android:layout_width="wrap_content"
    		android:layout_height="wrap_content"
    		android:text="@string/radiobutton1"
    	/>
    	<RadioButton
    		android:id="@+id/radiobutton2"
    		android:layout_width="wrap_content"
    		android:layout_height="wrap_content"
    		android:text="@string/radiobutton2"
    	/>
    	<RadioButton
    		android:id="@+id/radiobutton3"
    		android:layout_width="wrap_content"
    		android:layout_height="wrap_content"
    		android:text="@string/radiobutton3"
    	/>
    	<RadioButton
    		android:id="@+id/radiobutton4"
    		android:layout_width="wrap_content"
    		android:layout_height="wrap_content"
    		android:text="@string/radiobutton4"
    	/>
    </RadioGroup>
</LinearLayout>

 运行结果如下:



 假如我们选择杭州,会提示错误的Toast



 再次选中成都后,会提示答案正确



 这里就可以看到,单选按钮的使用效果,如果只是使用RadioButton的话,把配置文件中RadioGroup去掉,当然,要重新为每个单选按钮设置监听,这样,这个RadioButton就跟Button没有什么区别了,我们可以选中多个,所以要注意,单选按钮要和RadioGroup一起使用,才能够实现单选的功能

2016-07-30 17:26:12 qq_25815655 阅读数 736
  • winform基础

    主讲内容 第一讲 winform课程介绍(完结) 第二讲 Windows编程基础-hello world(完结) 第三讲Windows编程基础-常用控件(完结) 第四讲 多文档界面MDI处理和菜单组件(完结) 第五讲 Windows控件-单选、复选、图片控件(完结) 等

    4007 人正在学习 去看看 胡延亮

单选按钮RadioButton在Android平台上也应用的非常多,比如一些选择项的时候,会用到单选按钮,实现单选按钮由两部分组成,也就是RadioButton和RadioGroup配合使用

RadioButton的单选按钮;

RadioGroup是单选组合框,用于将RadioButton框起来;

在没有RadioGroup的情况下,RadioButton可以全部都选中;

当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择一个;

 

注意:单选按钮的事件监听用setOnCheckedChangeListener来对单选按钮进行监听

例子:

一道选择题,选择哪个城市美女最多,当然,这个就是为了测试

RadioTest.java

 

Java代码  收藏代码
  1. package org.loulijun.radio;  
  2.   
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.view.Gravity;  
  6. import android.widget.RadioButton;  
  7. import android.widget.RadioGroup;  
  8. import android.widget.TextView;  
  9. import android.widget.Toast;  
  10.   
  11. public class RadioTest extends Activity  
  12.       
  13.     TextView textview;  
  14.     RadioGroup radiogroup;  
  15.     RadioButton radio1,radio2,radio3,radio4;  
  16.     @Override  
  17.     public void onCreate(Bundle savedInstanceState)  
  18.         super.onCreate(savedInstanceState);  
  19.         setContentView(R.layout.main);  
  20.         textview=(TextView)findViewById(R.id.textview1);  
  21.         radiogroup=(RadioGroup)findViewById(R.id.radiogroup1);  
  22.         radio1=(RadioButton)findViewById(R.id.radiobutton1);  
  23.         radio2=(RadioButton)findViewById(R.id.radiobutton2);  
  24.         radio3=(RadioButton)findViewById(R.id.radiobutton3);  
  25.         radio4=(RadioButton)findViewById(R.id.radiobutton4);  
  26.           
  27.         radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener()  
  28.               
  29.             @Override  
  30.             public void onCheckedChanged(RadioGroup group, int checkedId)  
  31.                 // TODO Auto-generated method stub  
  32.                 if(checkedId==radio2.getId())  
  33.                  
  34.                     DisplayToast("正确答案:"+radio2.getText()+",恭喜你,回答正确!");  
  35.                 }else  
  36.                  
  37.                     DisplayToast("请注意,回答错误!");  
  38.                  
  39.              
  40.         });  
  41.      
  42.     public void DisplayToast(String str)  
  43.      
  44.         Toast toast=Toast.makeText(thisstr, Toast.LENGTH_LONG);  
  45.         toast.setGravity(Gravity.TOP,0,220);  
  46.         toast.show();  
  47.      
  48.  

 

 strings.xml文件

 

Java代码  收藏代码
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <resources>  
  3.     <string name="hello">哪个城市美女多?</string>  
  4.     <string name="app_name">单选按钮测试</string>  
  5.     <string name="radiobutton1">杭州</string>  
  6.     <string name="radiobutton2">成都</string>  
  7.     <string name="radiobutton3">重庆</string>  
  8.     <string name="radiobutton4">苏州</string>  
  9. </resources>  

 main.xml文件:注意,这里面,4个RadioButton包含在RadioGroup中

 

Java代码  收藏代码
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:orientation="vertical"  
  4.     android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent"  
  6.      
  7. <TextView    
  8.     android:layout_width="fill_parent"   
  9.     android:layout_height="wrap_content"   
  10.     android:text="@string/hello"  
  11.     android:id="@+id/textview1"  
  12.     />  
  13.     <RadioGroup  
  14.         android:id="@+id/radiogroup1"  
  15.         android:layout_width="wrap_content"  
  16.         android:layout_height="wrap_content"  
  17.         android:orientation="vertical"  
  18.         android:layout_x="3px"  
  19.      
  20.         <RadioButton  
  21.             android:id="@+id/radiobutton1"  
  22.             android:layout_width="wrap_content"  
  23.             android:layout_height="wrap_content"  
  24.             android:text="@string/radiobutton1"  
  25.         />  
  26.         <RadioButton  
  27.             android:id="@+id/radiobutton2"  
  28.             android:layout_width="wrap_content"  
  29.             android:layout_height="wrap_content"  
  30.             android:text="@string/radiobutton2"  
  31.         />  
  32.         <RadioButton  
  33.             android:id="@+id/radiobutton3"  
  34.             android:layout_width="wrap_content"  
  35.             android:layout_height="wrap_content"  
  36.             android:text="@string/radiobutton3"  
  37.         />  
  38.         <RadioButton  
  39.             android:id="@+id/radiobutton4"  
  40.             android:layout_width="wrap_content"  
  41.             android:layout_height="wrap_content"  
  42.             android:text="@string/radiobutton4"  
  43.         />  
  44.     </RadioGroup>  
  45. </LinearLayout>  

 运行结果如下:



 假如我们选择杭州,会提示错误的Toast



 再次选中成都后,会提示答案正确



 这 里就可以看到,单选按钮的使用效果,如果只是使用RadioButton的话,把配置文件中RadioGroup去掉,当然,要重新为每个单选按钮设置监 听,这样,这个RadioButton就跟Button没有什么区别了,我们可以选中多个,所以要注意,单选按钮要和RadioGroup一起使用,才能 够实现单选的功能


二:修改RadioButton样式

可能你觉得RadioButton的样式不好看,没关系,你可以自己设置喜欢的图片显示,方法如下:

1)在drawable文件夹下增加文档myradiobutton.xml,描述button在各个状态下得图片:

<selector xmlns:android="http://schemas.android.com/apk/res/android" >
       <item android:drawable="@drawable/radio_button_selected" android:state_checked="true"/>
      <item android:drawable="@drawable/radio_button" />
</selector>

2)然后在布局文件中修改Radiobutton属性(android:button):

<RadioButton
    android:id="@+id/rb_5"         
    android:layout_width="120px"
    android:layout_height="85px"
android:button="@null"
    android:button="@drawable/myradiobutton"
/>

2012-07-16 16:50:19 az44yao 阅读数 11825
  • winform基础

    主讲内容 第一讲 winform课程介绍(完结) 第二讲 Windows编程基础-hello world(完结) 第三讲Windows编程基础-常用控件(完结) 第四讲 多文档界面MDI处理和菜单组件(完结) 第五讲 Windows控件-单选、复选、图片控件(完结) 等

    4007 人正在学习 去看看 胡延亮

项目中用到了带单选按钮的ListView,本来是计划自己编写一个,结果发现ListView本身就有这个功能,这样大大节省了代码量,

只需要在构建ArrayAdapter对象时将textViewResourceId参数设置为系统内置的android.R.layout.simple_list_item_single_choice就可以了:

下面是具体代码:

package com.tangzq;

 

import java.util.ArrayList;

import java.util.List;

 

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.widget.AdapterView;

import android.widget.AdapterView.OnItemClickListener;

import android.widget.ArrayAdapter;

import android.widget.ListView;

 

public class MyListView_RadioButton extends Activity implements OnItemClickListener{

ListView listview;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

listview=new ListView(this);

//android.R.layout.simple_list_item_single_choice设置ListView项目条带单选按钮

listview.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_single_choice,getData()));

listview.setChoiceMode(ListView.CHOICE_MODE_SINGLE);//如果不使用这个设置,选项中的radiobutton无法响应选中事件

listview.setItemChecked(2, true);

setContentView(listview);

}

 

@Override

public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {

listview.setItemChecked(position, true);

}

   private List<String> getData(){

List<String> data = new ArrayList<String>();

data.add("测试数据1");

data.add("测试数据2");

data.add("测试数据3");

data.add("测试数据4");

data.add("测试数据5");

data.add("测试数据6");

return data;

}

}

http://hi.baidu.com/tzq668766/item/cb291c72dfbe1017d0dcb336
2012-12-02 15:35:13 chenwill3 阅读数 3765
  • winform基础

    主讲内容 第一讲 winform课程介绍(完结) 第二讲 Windows编程基础-hello world(完结) 第三讲Windows编程基础-常用控件(完结) 第四讲 多文档界面MDI处理和菜单组件(完结) 第五讲 Windows控件-单选、复选、图片控件(完结) 等

    4007 人正在学习 去看看 胡延亮

前段时间忙着找工作,android也是放了好久没去碰了,突然有些怀念了就拿起了书看了一下单选按钮组件。说实话android的组件是挺多的有的组件使用起来也比较麻烦还要结合adapter来使用,今天就来点简单的吧。搞一下单选按钮的选中事件就行了。

1.单选按钮标签为RadioGroup,这个当然是单选按钮的父节点了那子节点就是RadioButton了,先上一个自己写的单选按钮界面

界面的话就一段xml我就把一整个文件贴出来给大家看看

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
    <RadioGroup
     android:id="@+id/group"
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"
     android:checkedButton="@+id/hainan"
     android:textSize="20px"
     >
       <RadioButton 
         android:text="海南"
         android:id="@+id/hainan"
        />
         <RadioButton 
         android:text="上海"
         android:id="@+id/shanghai"
        />
        </RadioGroup>
</LinearLayout>

这里要注意的就是Radio要写在RadioGroup里不然程序就运行不起来了


2.选中事件OnCheckedChangeListener,这个东西不要写错了View里面是没有这个事件的,每个RadioButton都有一个Id与之相对应。下面就来看下怎么用了

package org.lxh.checkbox;

import android.app.Activity;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;

public class CheckboxActivity extends Activity {
    private RadioGroup group;
    private RadioButton hainan;
    private RadioButton shanghai;
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        group=(RadioGroup)this.findViewById(R.id.group);
        hainan=(RadioButton)this.findViewById(R.id.hainan);
        shanghai=(RadioButton)this.findViewById(R.id.shanghai);
        group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
			
			public void onCheckedChanged(RadioGroup group, int checkedId) {
				//如果‘海南’这个单选按钮被选中了
				if(hainan.getId()==checkedId){
					//弹出吐司通知
					Toast.makeText(CheckboxActivity.this, hainan.getText().toString(), Toast.LENGTH_LONG).show();
				}else{
					Toast.makeText(CheckboxActivity.this, shanghai.getText().toString(), Toast.LENGTH_LONG).show();
				}
				
			}
		});
    }
}

很简单吧只要把事件名称记住了就都好说,记不得就看看API文档。晚上的话再接着来个长按事件和下拉列表框的使用。


android单选按钮使用

博文 来自: wild46cat

Android的单选按钮

阅读数 833

没有更多推荐了,返回首页