0

问题描述: 我有一个 ImageView,由于不同设备的高度变化,它的大小会发生变化。

目标: 我希望使可绘制对象的底部边缘与图像视图的底部保持一致,并从顶部裁剪其余部分。

我做了什么: 我试过使用 centerCrop 但它只从顶部和底部裁剪:

<ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/llHomeScreenButtonBar"
        android:layout_alignParentTop="true"
        android:scaleType="centerCrop"
        android:src="@drawable/bg_home" />

我还尝试从以下位置复制 Extended ImageView 类:Chris Arriola

但是,我遇到了来自 eclipse 的错误说:

自定义视图 CustomImageView 未使用 2 或 3 参数的 View 构造函数;XML 属性不起作用

XML 代码片段如下所示:

    <com.misc.CustomImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/llHomeScreenButtonBar"
        android:layout_alignParentTop="true"        
        android:src="@drawable/bg_home" />

实现这一目标的最佳方法是什么?

谢谢!

4

1 回答 1

0

实现 2 和 3 参数构造函数。

public CustomImageView(Context)XML 膨胀过程不能使用单参数构造函数。XML 膨胀使用其他两个构造函数之一,带有一个或两个更多参数。

https://stackoverflow.com/a/9195858/357951

于 2013-07-15T04:31:52.360 回答