1

それぞれ3つのボタンを4行作成しようとしていますが、ボタンの下部には2つのテキストビューがあります。それらすべてを等間隔に配置したいのですが、そうではなく、理由はわかりません。

これが私のmain.xmlファイルのコードです。

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

<TableLayout android:id="@+id/TableLayout01" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    xmlns:android="http://schemas.android.com/apk/res/android">

<TableRow 

  android:id="@+id/TableRow01" 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content">

<Button android:onClick="button_click" 
  android:layout_weight="1"
  android:id="@+id/Button01" 
  android:text="@string/str_1"/> 

<Button android:onClick="button_click" 
  android:layout_weight="1"
  android:id="@+id/Button02" 
  android:text="@string/str_2"/> 

<Button android:onClick="button_click"
  android:layout_weight="1"
  android:id="@+id/Button03" 
  android:text="@string/str_3"/>

<Button android:onClick="button_click"
  android:layout_weight="1" 
  android:id="@+id/Button04" 
  android:text="@string/str_4"/>

</TableRow>

<TableRow android:id="@+id/TableRow02" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content">

<Button android:onClick="button_click"
  android:layout_weight="1" 
  android:id="@+id/Button05"  
  android:text="@+string/str_5"/>

<Button android:onClick="button_click"
  android:layout_weight="1"
  android:id="@+id/Button06" 
  android:text="@+string/str_6"/>

<Button android:onClick="button_click" 
  android:layout_weight="1"
  android:id="@+id/Button07" 
  android:text="@+string/str_7"/>

<Button android:onClick="button_click"
  android:layout_weight="1" 
  android:id="@+id/Button08"  
  android:text="@+string/str_8"/>

</TableRow>

<TableRow android:id="@+id/TableRow03" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content">

<Button android:onClick="button_click" 
  android:layout_weight="1"
  android:id="@+id/Button09" 
  android:text="@+string/str_9"/>

<Button android:onClick="button_click" 
  android:layout_weight="1"
  android:id="@+id/Button10" 
  android:text="@+string/str_10"/>

<Button android:onClick="button_click" 
  android:layout_weight="1"
  android:id="@+id/Button11" 
  android:text="@+string/str_11"/>

<Button android:onClick="button_click" 
  android:layout_weight="1"
  android:id="@+id/Button12" 
  android:text="@+string/str_12"/>

</TableRow>

<TableRow android:id="@+id/TableRow04" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent">

<TextView android:text="@+id/TextView01" 
    android:layout_weight="1" 
    android:id="@+id/TextView01" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"></TextView>

<TextView android:text="@+id/TextView02"
    android:layout_weight="1" 
    android:id="@+id/TextView02" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"></TextView>

</TableRow>

</TableLayout>

私のテキストビューには次のコードがあります。

 TextView t = (TextView)findViewById(R.id.TextView01);
 TextView t2 = (TextView)findViewById(R.id.TextView02);
 t.setTextSize(24);
 t2.setTextSize(24);

プログラムを実行すると、次のようになります。

代替テキスト

4

1 に答える 1

3

android:stretchColumns="0,1,2,3"ボタンのサイズを均等にするテーブルレイアウトへの追加を支援します。

android:layout_span="2"次に、両方のテキスト ビューにa を追加します。

最終的なコードは次のとおりです。

<!-- NOTICE STRETCHCOLUMNS ATTRIBUTE-->
<TableLayout android:id="@+id/TableLayout01"
xmlns:android="http://schemas.android.com/apk/res/android"
android:stretchColumns="0,1,2,3"
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
>
.
.
.

.
.
<!-- NOTICE LAYOUT_SPAN ATTRIBUTE-->
<TextView android:text="@+id/TextView01" 
    android:layout_weight="1" 
    android:id="@+id/TextView01"
    android:layout_span="2"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"></TextView>

<TextView android:text="@+id/TextView02"
    android:layout_weight="1" 
    android:id="@+id/TextView02" 
    android:layout_span="2"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"></TextView>

プログラムでテキスト サイズを設定して TextViews を均等に配置する場合は、android:layout_span設定時に必要ありません。

于 2010-12-31T05:04:12.400 に答える