如何修复图像视图背景和src?

时间:2013-06-10 15:40:40

标签: android imageview relativelayout

我想要一个这样的网格项:enter image description here

我尝试使用以下代码制作网格视图项目:

<?xml version="1.0" encoding="utf-8"?>

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

    <ImageView
        android:id="@+id/gridImage"
        android:layout_width="233dp"
        android:layout_height="197dp"

        android:background="@drawable/breakfast_background"
        android:scaleType="center"
        android:src="@drawable/frame" >

        </ImageView>

    <TextView
        android:id="@+id/alertCount"
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"
        android:layout_marginLeft="95dip"
        android:background="@drawable/ic_launcher"
        android:paddingLeft="25dip"
        android:paddingTop="18dip"
        android:text="10"
        android:textColor="@color/black"
        android:textSize="30sp"
        android:textStyle="bold"
        android:visibility="gone"

        />

    <TextView
        android:id="@+id/tv_TableName"
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentTop="true"
        android:textColor="#ffffff"
        android:layout_marginTop="155dp"
        android:singleLine="true"
        android:textSize="10pt"
        android:gravity="center"
        android:text="TextView" />

</RelativeLayout>

enter image description here

但图像背景显示不正确。

请建议。

1 个答案:

答案 0 :(得分:2)

我猜你应该使用2个ImageView而不是一个:

<ImageView
    android:id="@+id/backgroundImage"
    android:layout_width="233dp"
    android:layout_height="197dp"
    android:scaleType="fitXY"
    android:src="@drawable/shaped_breakfast_background" />

<ImageView
    android:id="@+id/frameImage"
    android:layout_width="233dp"
    android:layout_height="197dp"
    android:scaleType="fitXY"
    android:src="@drawable/frame" />

在你的drawable /文件夹中使用shaped_breakfast_background.xml,它是一个形状(查找android res形状),它将获取你的图像并使角落与你的帧相同的半径。 我承认我从未尝试过。 一个缺点是:在xml资源中使用位图并不能让你访问所有有趣的scaleTypes ImageView句柄(centerInside,centerCrop等),这可能是个问题

但是,如果使用形状不能解决您的问题,您当然可以使用与您的框架形状相同的breakfast_background,这将为您节省大量时间。然后你可以使用“1 ImageView”解决方案。