如何防止在Android Imageview中缩放?

问题描述:

我有一个480像素乘40像素的图像。我希望在ImageView中显示此图像,而不必将其缩放以适合。例如:如果我的屏幕只有320像素宽,我只想要320pixels的图像显示在屏幕上,而不是将它自己塞进ImageView中(即使它意味着图像的其余部分被截断) 。如何防止在Android Imageview中缩放?

有没有办法防止它适合缩放?

编辑:另外,我想图像的左侧与设备的屏幕左侧排队。

感谢

使用ScaleType.CENTER,像这样的XML:

android:scaleType="center" 

这将 “在观察中心的形象,但不进行任何缩放”

在这里阅读更多:http://developer.android.com/reference/android/widget/ImageView.ScaleType.html

(这是第一次在Google上搜索“imageview比例尺”)

+0

'ScaleType'肯定是要走的路。适用于很多不同的用例。 – 2012-02-15 15:54:21

+0

谢谢,但有没有办法让它粘在左边? – PaulG 2012-02-15 15:54:27

+0

@PaulG RelativeLayout – AedonEtLIRA 2012-02-15 16:04:03

使用MATRIX scaletype将其设置为无缩放且不居中

除非使用setImageMatrix(matrix)设置它,否则它将使用单位矩阵;

android:scaleType="matrix" 

或者在Java中:

view.setScaleType(ImageView.ScaleType.MATRIX); 
+0

非常感谢! scaleType中心没有像预期的那样工作,但矩阵做到了。 在我的情况下,我有一个TextView layout_toLeftOf图像和文本增长时,我需要在右边的图像始终保持原始大小。 – Moxor 2015-05-18 13:53:27

我有一个类似的问题在那里我有一个固定大小的图形,我想扩展到屏幕上,但留在比例是480 * 200

我在高度上使用了Fill_parent,所以它会在宽度上缩放和wrap_content。 以及将左对齐和父对齐对齐。

在你的情况下,你可以使用wrap_content和父对齐左对齐。 然后我在正常屏幕上使用右边距180dp来调整宽度,以确保它保持宽度。

<ImageView 
    android:id="@+id/imageLayer" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginRight="180dp" 
    tools:ignore="ContentDescription" /> 

试试这个:

    android:adjustViewBounds="true" 
        android:scaleType="centerCrop"