TableLayout
ラベルと入力フィールド ( Spinner
、EditText
、 )の 2 つの列がありますRadioGroup
。RadioGroup
のラベルを、最初のラジオ ボタンのテキストと正確に垂直方向に揃えたいと考えています。「Take it」というテキストは赤い線上にあるものとします。どうやってするか?出来ますか?
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>
私は、TableRows
2 つの異なるものをRadioGroups
それぞれ 1つ持つ 2 つRadioButton
を作成し、それらが 1 つの場所にあるかのように見せる何かをプログラムでコーディングできることを知っていますRadioGroup
。しかし、おそらく簡単な解決策があります。
API は 8 以上です。