0

对于介绍页面,对于 Android 应用程序,我想按以下顺序制作 9 个按钮:

[img1][img2][img3]
[img4][img5][img6]
[img7][img8][img9]

每个图像之间有一个空格(10dp)

问题是,当我使用 LinearLayouts 时,总是有一个空白。一张桌子也一样。我不能使用 GridLayout,因为应用程序需要支持 Android 2.2

我希望你能帮助我!

PS这里是代码示例

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >

            <ImageView
                android:id="@+id/tl"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:src="@drawable/home_tl" />

            <ImageView
                android:id="@+id/ImageView05"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:layout_marginLeft="10dp"
                android:layout_marginRight="10dp"
                android:src="@drawable/home_tc" />

            <ImageView
                android:id="@+id/ImageView06"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:src="@drawable/home_tr" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >

            <ImageView
                android:id="@+id/ImageView01"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:src="@drawable/home_ml" />

            <ImageView
                android:id="@+id/ImageView02"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:layout_marginLeft="10dp"
                android:layout_marginRight="10dp"
                android:src="@drawable/home_mc" />

            <ImageView
                android:id="@+id/ImageView03"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:src="@drawable/home_mr" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:src="@drawable/home_bl" />

            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:layout_marginLeft="10dp"
                android:layout_marginRight="10dp"
                android:src="@drawable/home_bc" />

            <ImageView
                android:id="@+id/imageView3"
                android:layout_width="220dp"
                android:layout_height="220dp"
                android:src="@drawable/home_br" />
        </LinearLayout>
    </LinearLayout>

问题是图像不适合屏幕。它必须适合各种尺寸(即使是平板电脑 10.1)

已解决:我为每个图像视图添加android:adjustViewBounds="true"并使用 layout_weight="1"

4

2 回答 2

1

尝试使用具有水平方向的 LinearLayout,在其中,取 3 个 ImageButtons 并将每个的宽度保持为 fill_parent 和 weight = 1,这将使所有 3 个 imageButton 的宽度相等。

例如

<LinearLayout
android:orientaion="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>

   <LinearLayout
   android:orientaion="horizontal"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"
   >
    <ImageButton
    android:layout_width="fill_parent"
    android:weight="1"
    android:layout_height="wrap_content"
    />
    <ImageButton
    android:layout_width="fill_parent"
    android:weight="1"
    android:layout_height="wrap_content"
    />
    <ImageButton
    android:layout_width="fill_parent"
    android:weight="1"
    android:layout_height="wrap_content"
    />
</LinearLayout>

<LinearLayout
  android:orientaion="horizontal"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  >
      <ImageButton
      android:layout_width="fill_parent"
      android:weight="1"
      android:layout_height="wrap_content"
      />
      <ImageButton
      android:layout_width="fill_parent"
      android:weight="1"
      android:layout_height="wrap_content"
      />
      <ImageButton
      android:layout_width="fill_parent"
      android:weight="1"
      android:layout_height="wrap_content"
      />
   </LinearLayout>

   <LinearLayout
     android:orientaion="horizontal"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
     >
      <ImageButton
      android:layout_width="fill_parent"
      android:weight="1"
      android:layout_height="wrap_content"
      />
      <ImageButton
      android:layout_width="fill_parent"
      android:weight="1"
      android:layout_height="wrap_content"
      />
      <ImageButton
      android:layout_width="fill_parent"
      android:weight="1"
      android:layout_height="wrap_content"
      />
  </LinearLayout>
<LinearLayout>
于 2012-07-16T12:42:25.407 回答
1

我认为您需要将其添加到ImageView

android:adjustViewBounds="true"
于 2012-07-16T12:32:07.557 回答