11

テーブル行(テキストビューを含む)のレイアウトパラメータを設定するのに問題があります。

良いレイアウトを得るためにいくつかの列を追加したいと思います。私はそれを動的にやっています。(コード内)

<TableRow> 
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="ok"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="bye"/>
</TableRow>

これらの2つのテキストビューを2つの列にし、それに応じて画面上にレイアウトしたいと思います。

4

1 に答える 1

17

すでに書いたものは、実際にはすでに2つの列を作成しているはずです。つまり、画面上で期待どおりに配置されない可能性があります。列は可能な限り狭くなります。AndroidレイアウトのTableLayoutタグには、いくつかの属性があります。それらの1つはストレッチ列です-指定された場合、指定されたすべての幅を満たすように、説明された列がストレッチされます。それらすべてを均等に伸ばす必要がある場合はスターを使用し、残りのスペースをカバーする特定の列を伸ばす場合は、その1ベースのインデックスを使用します(インデックスのグループを指定できます)。ここを参照してください:

<TableLayout
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:stretchColumns="0,1" >
   <TableRow android:layout_width="fill_parent"> 
     <TextView
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="ok"    
      />
    <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="bye" />
   </TableRow>
</TableLayout>

ちなみに、1行だけが必要な場合は、LinearLayoutとorientation="horizo​​ntal"を使用して同じことができる場合があります。複数の行がある場合は、実際にテーブルを処理していることに注意してください。列のすべての行が正確に上下に配置され、最も広い行が列の幅を決定します。

于 2012-01-18T08:22:27.290 に答える