1

我想设计一个棋盘,但是通过包含 8 个包含 8 个 ImageView 的另一个布局。那么,我怎样才能为所有 64 个正方形组件拥有唯一的 android:id 呢?

我希望包含的布局设计为:

LinearLayout(方向:水平)-> ImageView -> ... -> ImageView

另一点,为父级和包含的布局使用 LinearLayout 是最佳性能技术吗?我想过使用RelativeLayout,但我不知道我该如何管理。

4

1 回答 1

3

我会使用 TableLayout,因为这里提到的 Code Guru 是示例代码,可以帮助您创建您正在寻找的棋盘

<?xml version="1.0" encoding="utf-8"?>
    <TableLayout 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center_horizontal"
    android:background="#FFFFFF" >

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

        <ImageView
            android:id="@+id/block1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image1 />

        <ImageView
            android:id="@+id/block2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image2 />

        <ImageView
            android:id="@+id/block3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image1 />

        <ImageView
            android:id="@+id/block4"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image2 />

        <ImageView
            android:id="@+id/block5"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image1 />

      <ImageView
            android:id="@+id/block6"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image2 />

    <ImageView
            android:id="@+id/block7"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image1 />

  <ImageView
            android:id="@+id/block8"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image2 />
    </TableRow>

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

        <ImageView
            android:id="@+id/block9"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image1 />

        <ImageView
            android:id="@+id/block10"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image2 />

        <ImageView
            android:id="@+id/block11"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image1 />

        <ImageView
            android:id="@+id/block12"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image2 />

        <ImageView
            android:id="@+id/block13"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image1 />

      <ImageView
            android:id="@+id/block14"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image2 />

    <ImageView
            android:id="@+id/block15"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image1 />

  <ImageView
            android:id="@+id/block16"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:src="@drawable/image2 />
    </TableRow>

依此类推……如果您想交替使用白色和黑色背景颜色而不是图像,则可以。

希望这可以帮助!

于 2012-11-29T19:20:12.937 回答