求 android RadioButton属性详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求 android RadioButton属性详解相关的知识,希望对你有一定的参考价值。

RadioButton中有没有什么属性可以设置
在没有选择的情况下
默认选择一个选项

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

RadioButton的单选按钮;

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

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

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

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

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

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. /** Called when the activity is first created. */
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(this, str, Toast.LENGTH_LONG);
45. toast.setGravity(Gravity.TOP,0,220);
46. toast.show();
47.
48.

strings.xml文件

Xml代码
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中

Xml代码
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>

二:Android 自定义RadioButton的样式(和上面关系不大)

我们知道Android控件里的button,listview可以用xml的样式自定义成自己希望的漂亮样式。

最近用到RadioButton,利用xml修改android:background="@drawable/button_drawable",其中button_drawable为自己定义的.xml文件(res/drawable文件下),但是不成功,到网上查找,也没有正确的说法,我就开始自己尝试,最后做好了。

其实方法很简单,同样在res/drawable新建radiobutton.xml如下

Xml代码
1.<selector xmlns:android="http://schemas.android.com/apk/res/android">
2.
3. <item
4.
5.
6. android:state_enabled="true"
7.
8. android:state_checked="true"
9.
10. android:drawable="@drawable/check" />
11.
12. <item
13.
14. android:state_enabled="true"
15.
16. android:state_checked="false"
17.
18. android:drawable="@drawable/checknull" />
19.
20. </selector>
check和checknull分别为选中和位选中的图片。
然后在你的布局文件中,RadioButton 布局
设置android:button = "@drawable/radiobutton",就可以了!追问

RadioButton中有没有什么属性可以设置在没有选择的情况下默认选择一个选项

追答

那就不知道了.

参考技术A android:state_checked="false"
android:state_checked="true"
看意思应该就是这个了。。你试试、本回答被提问者采纳

Android开发——RadioButton控件

一,简介

RadioButton(单选按钮)

如题单选按钮,就是只能够选中一个,所以我们需要把RadioButton放到RadioGroup按钮组中,从而实现 单选功能!先熟悉下如何使用RadioButton,一个简单的性别选择的例子: 另外我们可以为外层RadioGroup设置orientation属性然后设置RadioButton的排列方式,是竖直还是水平

效果图:

和    CheckBox(复选框)  区别

如题复选框,即可以同时选中多个选项,至于获得选中的值,同样有两种方式: 1.为每个CheckBox添加事件:setOnCheckedChangeListener 2.弄一个按钮,在点击后,对每个checkbox进行判断:isChecked();

以上参考:2.3.5.RadioButton(单选按钮)&Checkbox(复选框) | 菜鸟教程 (runoob.com)https://www.runoob.com/w3cnote/android-tutorial-radiobutton-checkbox.html

二,实例

实现如下,按下按键,背景高亮

1,实现布局文件  .xml

<RadioGroup
        android:id="@+id/radioGroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         .......>
        <RadioButton       
          style="@style/cus_radio"
          ......  />
        <RadioButton
         ......   />
        <RadioButton 
         .......  />
        <RadioButton   
         .......  />

 </RadioGroup>

2,style自定义控件样式,定义在style.xml文件中。

 3,以上实现了RadioButton布局和样式设计,的那如何实现点击高亮呢?

其实是在background里面实现的。

<item name="android:background">@drawable/radio_button</item>

4,drawable/radio_button。

radio_button.xml文件放在了在drawable文件下。


 5,radio_button_unselect.xml文件

  6,radio_button_select.xml文件

 

三,总结

drawable

以上是关于求 android RadioButton属性详解的主要内容,如果未能解决你的问题,请参考以下文章

android radiobutton怎么控制drawable的大小

android中的radiobutton要点击2下才能选中

android 开发 listview绑定radiobutton控件 如何实现listview列表中只有一个radiobutton被选中?

Android中单选框RadioButton的基本用法

Android从零单排系列十《Android视图控件——RadioButton》

Android从零单排系列十《Android视图控件——RadioButton》