【问题标题】:TextView and RadioGroup alignmentTextView 和 RadioGroup 对齐
【发布时间】:2016-07-02 05:38:40
【问题描述】:

我无法将TextViewRadioGroup 放在正确的位置。

我希望TextView 有自己的行,RadioGroup 也有自己的行。也许还可以轻松调整,以便我可以更改两者之间的间距。

TextViewRadioGroup 当前位于彼此之上。

xml:

<RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/dueDateSection"
        android:id="@+id/relativeLayout2"
        android:paddingBottom="@dimen/activity_edit_item_layout_vertical_margin"
        android:paddingTop="@dimen/activity_edit_item_layout_vertical_margin"
        android:gravity="center_vertical">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/tvPriorityLabel"
            android:textSize="22sp"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:gravity="center_horizontal"
            android:layout_alignTop="@id/priorityChoice"/>

        <RadioGroup
            android:id="@+id/priorityChoice"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:gravity="center_horizontal">

            <RadioButton
                android:id="@+id/lowPriority"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/priorityLow"/>
            <RadioButton
                android:id="@+id/medPriority"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/priorityMedium" />
            <RadioButton
                android:id="@+id/highPriority"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/priorityHigh" />
        </RadioGroup>
    </RelativeLayout>

【问题讨论】:

    标签: java android android-layout android-relativelayout android-radiogroup


    【解决方案1】:

    试试这个

    您需要使用属性在相对布局中将视图放在另一个下方

    android:layout_below="@+id/text"

        android:id="@+id/relativeLayout2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/dueDateSection"
        android:gravity="center_vertical">
    
        <TextView
            android:id="@+id/text"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:gravity="center_horizontal"
            android:text="PriorityLabel"
            android:textSize="22sp" />
    
        <RadioGroup
            android:id="@+id/priorityChoice"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/text"
            android:gravity="center_horizontal"
            android:orientation="horizontal">
    
            <RadioButton
                android:id="@+id/lowPriority"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Low" />
    
            <RadioButton
                android:id="@+id/medPriority"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Medium" />
    
            <RadioButton
                android:id="@+id/highPriority"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="yHigh" />
        </RadioGroup>
    </RelativeLayout>
    
        </LinearLayout>
    

    结果

    【讨论】:

      【解决方案2】:

      您需要在 TextView 下对齐 RadioGroup。您应该将 id 属性添加到 TextView,然后将 RadioGroup 设置在其下方:

          <TextView
              android:id="@+id/text_view"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:text="@string/tvPriorityLabel"
              android:textSize="22sp"
              android:layout_alignParentTop="true"
              android:layout_centerHorizontal="true"
              android:layout_alignTop="@id/priorityChoice"/>
      
          <RadioGroup
              android:id="@+id/priorityChoice"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:orientation="horizontal"
              android:layout_below="@id/text_view">
      

      另请注意,您不需要 android:gravity attribute 来定位单个视图。

      请务必查看 RelativeLayoutsLinearLayouts 上的文档。

      【讨论】:

        【解决方案3】:

        你可以试试这个……把所有的都放在一排

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
        
                android:id="@+id/relativeLayout2"
                android:gravity="center_vertical"
                android:padding="5dp"
                android:paddingBottom="@dimen/activity_horizontal_margin"
                android:paddingTop="@dimen/activity_horizontal_margin"
        
              android:orientation="horizontal">
        
                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Label"
                    android:textSize="22sp"
                    android:layout_alignParentTop="true"
                    android:layout_centerHorizontal="true"
                    android:gravity="center_horizontal"
                   />
        
                <RadioGroup
                    android:id="@+id/priorityChoice"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal"
                    android:gravity="center_horizontal">
        
                    <RadioButton
                        android:id="@+id/lowPriority"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Low"/>
                    <RadioButton
                        android:id="@+id/medPriority"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="Medium" />
                    <RadioButton
                        android:id="@+id/highPriority"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="High" />
                </RadioGroup>
            </LinearLayout>
        

        或随心所欲

            android:id="@+id/relativeLayout2"
            android:gravity="center_vertical"
            android:padding="5dp"
            android:paddingBottom="@dimen/activity_horizontal_margin"
            android:paddingTop="@dimen/activity_horizontal_margin"
          android:orientation="horizontal">
        
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Label"
                android:textSize="22sp"
                android:id="@+id/text"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true"
        
              />
        
            <RadioGroup
                android:id="@+id/priorityChoice"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                android:layout_marginTop="5dp"
               android:layout_alignParentLeft="true"
                android:layout_below="@+id/text"
               >
        
                <RadioButton
                    android:id="@+id/lowPriority"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Low"/>
                <RadioButton
                    android:id="@+id/medPriority"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Medium" />
                <RadioButton
                    android:id="@+id/highPriority"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="High" />
            </RadioGroup>
        </RelativeLayout>
        

        **如果你想广播组中心而不是加入广播组

         android:layout_centerHorizontal="true"
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-05-21
          • 1970-01-01
          • 2014-02-18
          • 1970-01-01
          相关资源
          最近更新 更多