android:不显示ImageView

时间:2012-12-16 17:42:49

标签: android xml imageview

我正在使用这种布局:

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

    <TextView
        android:id="@+id/title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="2"
        android:textColor="#372c24" />

    <View
        android:id="@+id/space"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="5"
        android:background="@android:color/transparent" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="4"
        android:orientation="horizontal" 
        android:background="@drawable/shape_popup">
        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="2" />
        <ImageView
            android:contentDescription="@string/app_name"
            android:id="@+id/rateStar"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="2"
            android:background="@drawable/image" />
    </LinearLayout>

</LinearLayout>

但图片没有显示,为什么?

3 个答案:

答案 0 :(得分:1)

ImageBiew 在它获取某些来源之前不会显示任何内容所以请使用此

android:src="@drawable/image"

还会修改您的textview宽度,因为您在给予权重时不需要它。

          <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="2" />

答案 1 :(得分:1)

使用该属性时:

android:background=""

它通常会寻找类似颜色的东西,例如#FFFF0000&lt; - Red,并且它不会用图像填充容器。

要通过适当的拟合将图像放入容器中,您需要使用属性:android:src="@drawable/..."

使用此功能,您还可以使用android:scaleType="..."

更改容器内图像的不同比例类型。

答案 2 :(得分:0)

你应该使用android:src而不是android:background这样:

<ImageView
        android:contentDescription="@string/app_name"
        android:id="@+id/rateStar"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="2"
        android:src="@drawable/image" />

编辑: 此外,您应该将android:layout_width设置为0,因为您使用的是weight属性:

        <ImageView
        android:contentDescription="@string/app_name"
        android:id="@+id/rateStar"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="2"
        android:src="@drawable/image" />