Android基本控件之RadioGroup

Android基本控件之RadioGroup

2023年7月15日发(作者:)

Android基本控件之RadioGroup我们在⼿机上经常看到⼀堆选项,但是我们只能选择⼀个,那么在Android中,这个控件就叫做RadioButton,也就是单选按钮的意思,他们之所以能够达到只能选择⼀个的效果,是因为有⼀个RadioGroup这样⼀个组件。这次,我们就来详细的解说⼀下RadioButton和RadioGroup这两个控件的关系和区别,以及如何去使它们默契的搭配在⼀起~要实现RadioButton由两部分组成,也就是RadioButton和RadioGroup配合使⽤,其中RdioGroup是单选组合框,可以容纳多个RadioButton的⼀个容器。在没有RadioGroup的情况下,RadioButton可以全部被选中;当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择⼀个,从⽽达到了单选的⽬的。并⽤setOnCheckChangeLinstener()来对单选按钮进⾏监听。RadioGroup的相关属性:  ckedRadioButtonId();    该⽅法可以获取选中的按钮  heck();    该⽅法可以清除选中状态  heckedChangeLintener(kedChangeListener listener);    当⼀个单选按钮组中的单选按钮选中状态发⽣改变的时候调⽤的回调⽅法  (int id);    该⽅法可以通过传⼊ID来设置该选项为选中状态  w(View child,int index, Params params);    使⽤指定布局参数添加⼀个字视图(其中child是要添加的⼦视图,index是将要添加⼦视图的位置,params 所要添加的⼦视图的布局参数)  t();    获取单选框的值  此外,RadioButton的checked属性设置为true,代码⾥调⽤RadioButton的check(id)⽅法,不会触发onCheckedChanged事件然后,我们来看⼀下RadioButton和RadioGroup的关系:    utton表⽰单个原型单选框,⽽RadioGroup是可以容纳多个RadioButton的容器    2.每个RadioGroup中的RadioButton同时只能有⼀个被选中    3.不同的RadioGroup中的RadioButton互不相⼲,即如果组A中有⼀个选中了,那么组B中依然可以有⼀个被选中。    4.在⼤部分场合下,⼀个RadioGroup中⾄少有两个RadioButton    5.在⼤部分场合下,⼀个RadioGroup中的RadioButton默认会有⼀个被选中,并建议您将它放在RadioGroup的起始位置我们继续来看⼀下RadioButton和CheckBox的区别(是与CheckBox哦~):    1.单个RadioButton选中之后,通过点击⽆法变为未选中     单个CheckBox在选中后,通过点击可以变为未选中    2.⼀组RadioButton,只能同时选中⼀个     ⼀组CheckBox,能同时选中多个    utton在⼤部分UI框架中默认都以圆形表⽰     CheckBox在⼤部分UI框架中默认都以矩形表⽰

然后,我们来做⼀个⼩案例,来进⼀步的解释说明RadioButton和RadioGroup⼆话不说,我们先上图

今天哈,我们就⽤RadioButton和RadioGroup来实现我们上⾯的这个⼩案例。  ⾸先,我们来分析⼀下,我们想要实现这个案例都需要准备写什么吧我们根据上⾯的图,我们能看出来,我们需要图⽚~然⽽需要⼏张呢?这⾥事需要6张的哦!我们看起来是三张图⽚,但是当我们点击的时候,我们会发现图⽚变⾊了, 这就是另⼀张图⽚了。所以,我们需要准备6张图⽚。这是资源。  接下来,我们来分析⼀下,我们都需要创建什么配置⽂件不⽤想,我们⾸先必须要有⼀个主界⾯的布局⽂件,并且放上三个RadioButton,⽤⼀个RadioGroup把这三个RadioButton包裹起来,并设置相应属性然后,我们还需要在drawable⽬录下创建⼀个改变字体颜⾊的配置⽂件,和三个改变图⽚的配置⽂件  然后,我们再来分析⼀下,在Activity中,我们应该如何去做⾸先,我们需要获取到这个RadioGroup,然后为其设置点击事件,在点击事件中,我们实现点击按钮弹出⼀个吐司好了,我们的分析就暂时到这⾥,接下来,我们根据我们的分析来做具体的实现第⼀步、我们先来创建主界⾯的布局⽂件:

在这⾥,我们解释⼀下其中上⾯没有介绍到的属性  android:drawableTop 属性是⽤来将指定的图⽚显⽰到RadioButton的顶部,为了⽅便我们下⾯放⽂字第⼆步、我们来看改变字体颜⾊的配置⽂件:   这个是⽩⾊     这个是橘黄⾊第三步、我们来看改变那三张图⽚的配置⽂件:改变“消息”: 改变“联系⼈”: 改变“动态”: 我们来详细的看⼀下这些⽂件中的属性  其中android:state_checked 属性是设置状态的,如果是选中状态,就为true,否则为false。后⾯对应的 android:drawable 属性就是对应的图⽚第四步、我们来看Activity中的具体实现:public class MainActivity extends AppCompatActivity implements kedChangeListener{ @Override protected void onCreate(Bundle savedInstanceState) { te(savedInstanceState); setContentView(ty_main); initView(); } private void initView() { //通过findViewById()来找到我们需要的RadioGroup RadioGroup radioGroup = (RadioGroup) findViewById(); //设置状态改变的事件 heckedChangeListener(this); } /** * 重写的状态改变的事件的⽅法 * @param group 单选组合框 * @param checkedId 其中的每个RadioButton的Id */ @Override public void onCheckedChanged(RadioGroup group, int checkedId) { //根据不同ID 弹出不同的吐司 switch (ckedRadioButtonId()){ case utton_xiaoxi: xt(this, "你点击了“消息”按钮", _SHORT).show(); break; case utton_lianxiren: xt(this, "你点击了“联系⼈”按钮", _SHORT).show(); break; case utton_dongtai: xt(this, "你点击了“动态”按钮", _SHORT).show(); break; } }}根据我们的思路,我们实现了这样的⼀个⼩案例,我们来测试⼀下吧。这样,我们就完美的实现了我们的⼩案例。让程序写⼊⽣命,将代码融⼊灵魂                    -------smile、zj

发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1689427387a246431.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信