7

私は以下を持っています

<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/admin_row"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:gravity="center_horizontal">
    <RelativeLayout android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:orientation="horizontal"
                    android:background="@color/silver">

私は動的にテーブルにデータを入力しますが、相対的なレイアウトが銀色であるため、テーブル行の約3/4にしか広がりません。水平方向のLinearLayoutを配置すると完全に広がりますが、垂直方向に変更すると同じ問題が発生します。次のようなものが必要なため、テーブル行に相対レイアウトが必要です。


の詳細MoreDetail。

テーブルの行にまたがる相対レイアウトを取得するためのアイデアはありますか?

4

3 に答える 3

11

TableLayout タグに android:stretchColumns="0" または android:stretchColumns="*" を設定してみてください。

于 2010-04-28T13:50:25.207 に答える
6

そのため、一時的にこの問題から離れていましたが、再び問題が発生しました。繰り返しますが、私が見た問題は、幅と高さを何に設定しても、テーブル行内の相対的なレイアウトが行全体に及ばないということでした。レイアウトをテーブル行全体に (水平に) 強制的に広げるソリューションを見つけました。

<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/detail_row"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content">
    <RelativeLayout android:layout_height="fill_parent"
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:orientation="horizontal">

これは、表の行のJavaドキュメントの状態とは直接矛盾しているように見えることに注意してください。

TableRow の子は、XML ファイルで layout_width および layout_height 属性を指定する必要はありません。TableRow は常に、これらの値をそれぞれ FILL_PARENT と WRAP_CONTENT に強制します。

于 2010-02-02T17:20:21.120 に答える
1

android:background="@color/silver"TableRow に属性を配置する必要があります。

ScrollView 内の LinearLayout で同じ問題が発生しました。

それが役に立てば幸い、

糸くず

于 2010-01-19T20:37:58.600 に答える