Android在父亲RelativeLayout中裁剪ImageView

时间:2013-08-20 17:06:48

标签: java android image scale crop

我想知道如何使用固定的宽度和高度ImageView来裁剪具有缩放背景图像的parent

基本上,我希望使用ImageView android:background缩放图像,然后我想裁剪图像中父节点范围之外的部分。

到现在为止,我有这段代码:

<RelativeLayout android:id="@+id/time_foregrd"
    android:layout_width="57px"
    android:layout_height="100px"
    android:layout_marginLeft="100px"
    android:layout_marginTop="285px"
    android:clipChildren="true"
   >
    <ImageView  android:layout_width="57px"
                android:layout_height="338px"
                android:minWidth="57px"
                android:minHeight="338px"
                android:background="@drawable/time_foreground"
                />
</RelativeLayout>

但它不起作用......我做错了什么?

3 个答案:

答案 0 :(得分:4)

好的,我设法如何做到这一点。我没有使用RelativeLayout,而是使用FrameLayout,而且效果很好。

以下是代码:

<FrameLayout android:id="@+id/time_foregrd"
    android:layout_width="57px"
    android:layout_height="100px"
    android:layout_marginLeft="100px"
    android:layout_marginTop="285px"
   >
    <ImageView  android:layout_width="57px"
                android:layout_height="338px"
                android:layout_gravity="bottom"
                android:scaleType="fitXY"
                android:src="@drawable/time_foreground"
                />
</FrameLayout>

答案 1 :(得分:0)

我可以使用

在RelativeLayout中做同样的事情
android:scaleType="centerCrop"

答案 2 :(得分:0)

1-用relativeLayout包装该元素。

2-将此添加到您的元素:android:layout_gravity="center_vertical"

它将像ImageView的scaleType =“centerCrop”

一样
   <LinearLayout
        android:id="@+id/ll_wrapper"
        android:layout_width="match_parent"
        android:layout_height="250.0dp" >
        <TextureView
            android:layout_width="match_parent"
            android:layout_height="451.0dp"
            android:id="@+id/tv_YourElement"
            android:layout_gravity="center_vertical" /> 

    </LinearLayout>

机器人:layout_gravity = “center_vertical”, “CENTER_HORIZONTAL” “中心”,......