6

我正在做一个安卓项目。为什么 ImageView id iv1 和 iv2 没有全屏显示?我把我的XML放在这里:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/layout1"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:paddingBottom="10px"
              android:paddingLeft="10px"
>
    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
    >
        <ImageView
            android:id="@+id/iv1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:visibility="invisible"
        />

        <ImageView
            android:id="@+id/iv2"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:visibility="invisible"
        />

           <ImageButton
            android:id="@+id/menu_btn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_toRightOf="@+id/BunyiIng"
            android:src="@drawable/menu_btn"
            android:background="@null"
        />

        <ImageView
            android:id="@+id/image_logo"
             android:src="@drawable/logo_vehicle"
               android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@null"
            android:layout_marginTop="5px"
        />

    </RelativeLayout>
</LinearLayout>

如果我将 ImageViews 放在 LinearLayout 中,它会阻止 RelativeLayout。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/layout1"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:paddingBottom="10px"
              android:paddingLeft="10px"
>
    <ImageView
            android:id="@+id/iv1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:visibility="invisible"
    />

    <ImageView
        android:id="@+id/iv2"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:visibility="invisible"
    />

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
    >

但是如果 Imageview 放在 RelativeLayout 下面,但在 LinearLayout 里面,那么 ImageView 就不会显示图像。

    </RelativeLayout>

    <ImageView
            android:id="@+id/iv1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:visibility="invisible"
    />

    <ImageView
            android:id="@+id/iv2"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:visibility="invisible"
    />
</LinearLayout>

我该如何解决?我希望 ImageView 全屏显示图像。

4

3 回答 3

23
  1. 您有线性布局的填充。
  2. 你在 imageview 中没有任何东西可以看到它的内容,所以你看不到它的内容。
  3. 您已将 imageview 设置为不可见,因此您看不到它的内容。
  4. 如果您不关心纵横比,请使用 android:adjustViewBounds="false" 和 android:scaleType="fitXY"。
于 2012-05-22T09:40:39.437 回答
3

将此属性用于图像视图:

android:scaleType="fitXY"
于 2012-05-22T09:37:28.077 回答
0

我看到你的 ImageViews 的高度和宽度都设置为“fill_parent”,所以我猜你希望它们都缩放到整个屏幕。如果您希望它们只是坐在那里而不打算在以后使用它们,请添加

android:background="@drawable/your_drawable_here"

到你的线性和相对布局。它将在布局的背景中添加一个图像,将其缩放以适应整个布局,如果我没记错的话,还可以节省一些资源。

于 2012-05-22T09:46:38.740 回答