1

TableLayoutラベルと入力フィールド ( SpinnerEditText、 )の 2 つの列がありますRadioGroupRadioGroupのラベルを、最初のラジオ ボタンのテキストと正確に垂直方向に揃えたいと考えています。「Take it」というテキストは赤い線上にあるものとします。どうやってするか?出来ますか?

ラベル付きの例 ->gravity=top

XML は次のTableRowとおりです。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:id="@+id/layoutEditMedication1"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="vertical"
  android:padding="16dp"
  tools:context=".Main" >

  <ScrollView
    android:id="@+id/scrollView1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_above="@id/buttons" >

    <TableLayout
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:shrinkColumns="1"
      android:stretchColumns="1" >

      <TableRow style="@style/EditMedicationTableRowT" >

        <TextView
          style="@style/EditMedicationLabel"
          android:layout_gravity="top"
          android:text="@string/i_need_to_take" />

        <RadioGroup
          style="@style/EditMedicationTableRowB"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:orientation="vertical" >

          <RadioButton
            android:id="@+id/radioScheduleDaily"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/schedule_daily" />

          <RadioButton
            android:id="@+id/radioScheduleSpecial"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/schedule_special" />
        </RadioGroup>
      </TableRow>
    </TableLayout>
  </ScrollView>

</RelativeLayout>

使用されるスタイルは次のとおりです。

<resources>
    <style name="EditMedicationTableRowT">
        <item name="android:paddingTop">8dp</item>
        <item name="android:layout_width">fill_parent</item>
        <item name="android:layout_height">wrap_content</item>
    </style>

    <style name="EditMedicationTableRowB">
        <item name="android:layout_width">fill_parent</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:paddingBottom">8dp</item>
        </style>

    <style name="EditMedicationLabel">
        <item name="android:layout_width">wrap_content</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:layout_gravity">center_vertical</item>
        <item name="android:paddingRight">16dp</item>
        <item name="android:textAppearance">?android:attr/textAppearanceMedium</item>
    </style>
</resources>

私は、TableRows2 つの異なるものをRadioGroupsそれぞれ 1つ持つ 2 つRadioButtonを作成し、それらが 1 つの場所にあるかのように見せる何かをプログラムでコーディングできることを知っていますRadioGroup。しかし、おそらく簡単な解決策があります。

API は 8 以上です。

4

1 に答える 1

0

try this

<TextView
  style="@style/EditMedicationLabel"
  android:layout_gravity="top"
  android:paddingBottom="0dp"
  android:text="@string/i_need_to_take" />
于 2013-04-28T03:12:59.303 に答える