2

テーブルレイアウトの境界線を強調表示するにはどうすればよいですか...背景として形状を持つroundshape.xmlを使用しています。テーブルレイアウトの周りに境界線を付ける方法が必要です...

roundshape.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <corners android:radius="5dip" />

    <gradient
        android:angle="270"
        android:endColor="@color/WhiteSmoke"
        android:startColor="@color/WhiteSmoke"
        android:type="linear" />

</shape>

ホワイトスモーク =#F5F5F5

main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TableLayout
        android:layout_width="400dp"
        android:layout_height="400dp"
        android:background="@drawable/roundshape"
         >

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

        </TableRow>

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

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

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

</LinearLayout>
4

2 に答える 2

1

私はこれがあなたを助けるかもしれないと思う..コードを見て、あなたはトリックを理解するでしょう

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TableLayout
        android:layout_width="400dp"
        android:layout_height="400dp"
        android:background="@drawable/roundshape" >

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="1px"
            android:background="#ff9" >

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="1px"
                android:text="" />
        </TableRow>

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

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="this is amazing" />
        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="1px"
            android:background="#ff9" >

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="1px"
                android:text="" />
        </TableRow>

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

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="this is amazing" />
        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="1px"
            android:background="#ff9" >

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="1px"
                android:text="" />
        </TableRow>

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

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="this is amazing" />
        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="1px"
            android:background="#ff9" >

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="1px"
                android:text="" />
        </TableRow>

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

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="this is amazing" />
        </TableRow>

        <TableRow
            android:layout_width="fill_parent"
            android:layout_height="1px"
            android:background="#ff9" >

            <TextView
                android:layout_width="fill_parent"
                android:layout_height="1px"
                android:text="" />
        </TableRow>
    </TableLayout>

</LinearLayout>
于 2012-08-03T12:25:45.840 に答える
0

これについては、すでに非常によく似た投稿があります。

デビッドジェシーから

この問題の私の解決策は、すべてのセルの背景フィールドにxmlドローアブルリソースを配置することです。このようにして、すべてのセルに必要な境界線を使用して形状を定義できます。唯一の不便な点は、極端なセルの境界が他のセルの半分の幅になっていることですが、テーブルが画面全体に表示されても問題ありません。

このリソースへの参照は次のとおりです。

于 2012-08-02T16:30:42.330 に答える