3

次のような相対的なレイアウトがあります。 代替テキスト

コードは次のとおりです。

<?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="fill_parent"
    >   
    <TextView
        android:id="@+id/nameText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="5dip"
        android:layout_alignParentLeft="true"
        android:text="Symbol"
        />
    <TextView
        android:id="@+id/priceText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="5dip"
        android:layout_toRightOf="@+id/nameText"
        android:gravity="right"     
        android:text="100"
     />  
    <TextView
        android:id="@+id/changeText"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:padding="5dip"
        android:layout_toRightOf="@+id/priceText"
        android:gravity="right"     
        android:text="1.3"
        />  
</RelativeLayout>

会社名を数字の 1.3 の横に並べるにはどうすればよいですか?

4

3 に答える 3

3

Mayra の回答に続いて、layout_weight を使用してそれを行う 1 つの方法を次に示します。

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    >
    <TableRow>  
        <TextView
            android:id="@+id/left_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="left|center_vertical"
            android:padding="5dip"
            android:layout_weight="0"
            android:text="Code"
            />
        <TextView
            android:id="@+id/middle_text"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="right|center_vertical"
            android:padding="5dip"
            android:layout_weight="1"
            android:text="Name of Company"
            />      
        <TextView
            android:id="@+id/right_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="5dip"
            android:gravity="right|center_vertical"
            android:layout_weight="0"       
            android:text="1.3"
            />
    </TableRow>
</TableLayout>
于 2010-08-28T03:26:31.837 に答える
1

何をしたいのかは明確ではありませんが、いくつかのオプションがあります。

列を行間で整列させたい場合は、TableLayoutの使用を検討してください。

「重み」属性を使用して、各TextViewが画面の何パーセントを占めるかに影響を与えることもできます。左端のテキストビューに1の値を割り当て、他の2に0を割り当てると、左側のテキストビューが余分なスペースをすべて占有し、中央のテキストビューを右に押します。これにより、中央のテキストビューが右揃えで表示される可能性があります。代わりに、2、5、および3を割り当てることにより、左側を20%、中央を50%、右側を30%にすることができます。

テキストビューの明示的なサイズ(dpi単位)を設定することもできますが、これは画面のサイズが異なると問題になる可能性があります。

于 2010-08-27T16:38:34.820 に答える
0

マイラさんに同意!TableView を使用すると、探している書式が得られるだけでなく、ListView のほぼすべての機能 (スクロール、およびリスト指向の機能) が維持されます。

于 2010-08-27T18:11:14.230 に答える