您的位置:首页 > 移动开发 > Android开发

Android RadioGroup中横向、竖向布局RadioButton的问题

2015-01-13 17:15 323 查看
转载:http://blog.csdn.net/aminfo/article/details/7558308

RadioGroup默认的横向android:orientation="horizontal"、竖向布局android:orientation="vertical",无法设置每行显示的个数,只能全部横向显示或者竖向显示。

而通过线性布局模版后,RadioButton却变成不是同一个组的,变成不是单选的,达不到原先想要的效果。

 

本例中是想在RadioGroup中一行显示2个RadioButton,上面的方法行不通,后来发现在RadioButton用android:layout_marginLeft和android:layout_marginTop可能设置RadioButton的相对位置,于是,通过下面代码,实现了一行显示2列RadioButton,目前还未测试在不同分辨率下是否会出现误差。效果图如下:



 

布局代码如下:

 

[html] view
plaincopy

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

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  

        android:id="@+id/layout_sort"  

        android:layout_width="fill_parent"  

        android:layout_height="120px"  

        android:layout_weight="1"  

        android:orientation="vertical"  

        android:layout_gravity="center"  

        android:gravity="center"  

        android:layout_margin="5px"  

        android:paddingLeft="10px"  

        android:paddingRight="10px"  

        android:paddingTop="5px"  

        android:paddingBottom="5px">  

          

        <ScrollView   

            android:layout_width="fill_parent"  

            android:layout_height="wrap_content"  

            android:scrollbars="vertical"  

            android:fadingEdge="vertical">  

              

            <LinearLayout android:id="@+id/layout_sort0"  

                android:layout_width="fill_parent"  

                android:layout_height="wrap_content"  

                android:orientation="vertical">  

          

                <LinearLayout android:id="@+id/layout_sort1"  

                    android:layout_width="fill_parent"  

                    android:layout_height="wrap_content"  

                    android:orientation="vertical"  

                    android:layout_gravity="left"  

                    android:gravity="left">  

              

                    <TextView android:id="@+id/rename_sortTitle"  

                        android:layout_width="fill_parent"  

                        android:layout_height="32px"  

                        android:singleLine="true"  

                        android:textSize="20sp"  

                        android:textStyle="bold"  

                        android:gravity="center_vertical|left"  

                        android:layout_gravity="center_vertical|left"  

                        android:text="请选择排序方式:" />  

                  

                    <RadioGroup  android:id="@+id/orderBy"  

                        android:layout_width="fill_parent"  

                        android:layout_height="wrap_content"  

                        android:orientation="vertical">  

  

                        <RadioButton android:id="@+id/orderBy1"  

                            android:text="名称"  

                            android:layout_width="wrap_content"  

                            android:layout_height="wrap_content" />  

                      

                        <RadioButton android:id="@+id/orderBy2"  

                            android:text="日期"  

                            android:layout_width="wrap_content"  

                            android:layout_height="wrap_content"  

                            android:layout_marginLeft="120px"  

                            android:layout_marginTop="-48px"/>  

                      

                        <RadioButton android:id="@+id/orderBy3"  

                            android:text="类型"  

                            android:layout_width="wrap_content"  

                            android:layout_height="wrap_content" />  

                  

                        <RadioButton android:id="@+id/orderBy4"  

                            android:text="大小"  

                            android:layout_width="wrap_content"  

                            android:layout_height="wrap_content"  

                            android:layout_marginLeft="120px"  

                            android:layout_marginTop="-48px" />  

                          

                        <RadioButton android:id="@+id/orderBy5"  

                            android:text="系统默认"  

                            android:layout_width="wrap_content"  

                            android:layout_height="wrap_content" />                

                  

                    </RadioGroup>  

              

                    <View android:layout_width="fill_parent"  

                        android:layout_height="1dip"  

                        android:background="#ff666666" />  

              

                    <RadioGroup  android:id="@+id/orderLx"  

                        android:layout_width="wrap_content"  

                        android:layout_height="wrap_content">  

                  

                        <RadioButton android:id="@+id/orderLx1"  

                            android:text="升序"  

                            android:layout_width="wrap_content"  

                            android:layout_height="wrap_content"/>  

                      

                        <RadioButton android:id="@+id/orderLx2"  

                            android:text="降序"  

                            android:layout_width="wrap_content"  

                            android:layout_height="wrap_content"  

                            android:layout_marginLeft="120px"  

                            android:layout_marginTop="-48px" />  

                                      

                    </RadioGroup>  

                  

                </LinearLayout>  

  

                <LinearLayout android:id="@+id/layout_sort2"  

                    android:layout_width="fill_parent"  

                    android:layout_height="wrap_content"  

                    android:orientation="horizontal"  

                    android:layout_gravity="center"  

                    android:gravity="center">  

      

                    <Button android:id="@+id/sortOk"  

                        android:layout_width="wrap_content"  

                        android:layout_height="wrap_content"  

                        android:text="确定"  

                        android:layout_margin="5px"/>  

          

                    <Button android:id="@+id/sortCancel"  

                        android:layout_width="wrap_content"  

                        android:layout_height="wrap_content"  

                        android:text="取消"  

                        android:layout_margin="5px"/>  

      

                </LinearLayout>  

                  

            </LinearLayout>  

              

        </ScrollView>   

          

    </LinearLayout>  

通过修改 RadioButtonandroid:layout_marginLeftandroid:layout_marginTop属性实现
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐