前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android 实现radiobutton单选换行效果

Android 实现radiobutton单选换行效果

作者头像
再见孙悟空_
发布2023-02-10 20:08:48
9610
发布2023-02-10 20:08:48
举报
文章被收录于专栏:【Android开发基础】

上面这个是实现后的效果图,是实现后的效果。

因为我这个分类是写死的,不是动态获取的,所以我没有用RadioGroup然后动态添加radioButton,因为Radiogroup设置换行以及每行的个数非常麻烦,也没有用类似gridView实现。这个就是写死的RadioButton。

xml布局

代码语言:javascript
复制
             <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_marginLeft="@dimen/margin_10"
                        android:layout_marginRight="@dimen/margin_10"
                        android:layout_marginTop="@dimen/margin_15"
                        android:orientation="vertical">

                        <TextView
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="建筑分类"
                            android:textColor="@color/black"
                            android:textSize="@dimen/text_size_16" />

                        <LinearLayout
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:layout_marginTop="@dimen/margin_15"
                            android:orientation="horizontal">

                            <RadioButton
                                android:id="@+id/build_type_one"
                                style="@style/radio_button_bg_style"
                                android:text="房建" />

                            <RadioButton
                                android:id="@+id/build_type_two"
                                style="@style/radio_button_bg_style"
                                android:text="市政" />

                            <RadioButton
                                android:id="@+id/build_type_three"
                                style="@style/radio_button_bg_style"
                                android:text="轨道交通" />
                        </LinearLayout>

                        <LinearLayout
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:orientation="horizontal">

                            <RadioButton
                                android:id="@+id/build_type_four"
                                style="@style/radio_button_bg_style"
                                android:text="园林绿化" />

                            <RadioButton
                                android:id="@+id/build_type_five"
                                style="@style/radio_button_bg_style"
                                android:text="矿山" />

                            <RadioButton
                                android:id="@+id/build_type_six"
                                style="@style/radio_button_bg_style"
                                android:text="矿山"
                                android:visibility="invisible" />
                        </LinearLayout>
                    </LinearLayout>

分别给每个radioButton设置click点击事件。

代码语言:javascript
复制
   //建筑类型
        mBuildOne = findViewById(R.id.build_type_one);
        mBuildTwo = findViewById(R.id.build_type_two);
        mBuildThree = findViewById(R.id.build_type_three);
        mBuildFour = findViewById(R.id.build_type_four);
        mBuildFive = findViewById(R.id.build_type_five);

        mBuildOne.setOnClickListener(this);
        mBuildTwo.setOnClickListener(this);
        mBuildThree.setOnClickListener(this);
        mBuildFour.setOnClickListener(this);
        mBuildFive.setOnClickListener(this);

然后点击事件里面这样设置

代码语言:javascript
复制
           case R.id.build_type_one:
                mBuildOne.setChecked(true);
                mBuildTwo.setChecked(false);
                mBuildThree.setChecked(false);
                mBuildFour.setChecked(false);
                mBuildFive.setChecked(false);

其实很简单的思路,这个如果就是简单单纯的布局完全可以这样写,但是如果是 大量的分类单选选项就不能这样写了。

比如考试题一页5道题 ,每题4个选项就要动态去写了 可以用recycleview+gridView实现。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-04-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档