0

リストビューのアイテムを並べて、表形式のデータとして表示したいと思います。各ListItemに4つのTextViewがあります。端にも1位と4位があります。真ん中を並べることができません。これを行うためのより良い方法はありますか?

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="40dp"
  android:background="@color/row_selector"
android:paddingLeft="10dp"
 android:paddingRight="5dp"
android:paddingBottom="10dp"
android:paddingTop="10dp" >
<TextView
    android:id="@+id/labelGas"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="25"
    android:text="@+id/label"
    android:textColor="#222"
     >
</TextView>
<TextView
    android:id="@+id/labelDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="15"
    android:text="@+id/label"
    android:textColor="#222"
    >
</TextView>
<TextView
    android:id="@+id/labelApr"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="35"
    android:text="@+id/label"
    android:textSize="18dp" >
</TextView>
<TextView
    android:id="@+id/labelFee"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="5"
    android:text="@+id/label"
   >
</TextView>
 </LinearLayout>
4

3 に答える 3

1

すべてのTextViewタグを設定android:layout_width="0dp"すると、実際のコンテンツに関係なく、ビューの幅は重みに正確に応じて決まります。

于 2012-05-31T03:52:07.280 に答える
0

RelativeLayoutを使用してみてください。これは、より強力で効率的です。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:background="@color/row_selector"
android:paddingLeft="10dp"
android:paddingRight="5dp"
android:paddingBottom="10dp"
android:paddingTop="10dp" >
<TextView
    android:id="@+id/labelGas"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:text="@+id/label"
    android:textColor="#222"
     >
</TextView>
<TextView
    android:id="@+id/labelDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/labelGas"
    android:layout_alignParentTop="true"
    android:text="@+id/label"
    android:textColor="#222"
    >
</TextView>
<TextView
    android:id="@+id/labelApr"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/labelDate"
    android:layout_alignParentTop="true"
    android:text="@+id/label"
    android:textSize="18dp" >
</TextView>
<TextView
    android:id="@+id/labelFee"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/labelApr"
    android:layout_alignParentTop="true"
    android:text="@+id/label"
   >
</TextView>
 </RelativeLayout>
于 2012-05-31T03:55:36.267 に答える
0
<?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="40dp"
  android:background="@color/row_selector"
  android:paddingLeft="10dp"
  android:paddingRight="5dp"
  android:paddingBottom="10dp"
  android:paddingTop="10dp" >
<TextView
    android:id="@+id/labelGas"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:text="TextView1"
    android:textColor="#FFFF00"      >
 </TextView>
 <TextView
    android:id="@+id/labelDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:text="TextView2"
    android:visibility="invisible"
    android:textColor="#ffff0000"    >
 </TextView>
 <TextView
    android:id="@+id/labelApr"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:text="TextView3"
    android:visibility="invisible"
    android:textColor="#ff00ff00" >
 </TextView>
 <TextView
    android:id="@+id/labelFee"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:text="TextView4"
    android:textColor="#ffff6666"   >
 </TextView>
</LinearLayout>
于 2012-05-31T04:01:04.917 に答える