为什么ImageView不是全屏?

时间:2012-05-22 09:31:19

标签: android imageview

我正在做一个Android项目。为什么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以全屏显示图像。

3 个答案:

答案 0 :(得分:23)

  1. 您有线性布局的填充。
  2. 您在imageview中没有任何内容可以查看其内容,因此您无法看到其内容。
  3. 您已将imageview设置为不可见,因此无法看到其内容。
  4. 如果您不关心宽高比,请使用android:adjustViewBounds =“false”和android:scaleType =“fitXY”。

答案 1 :(得分:3)

将此属性用于图像视图:

android:scaleType="fitXY"

答案 2 :(得分:0)

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

android:background="@drawable/your_drawable_here"

同时显示线性布局和相对布局。它会将图像添加到布局的背景中,对其进行缩放以适应整个布局,如果我没有弄错的话,可以节省一些资源。