2011-09-29 103 views
6

我有一个640px宽,208px高的PNG,放在我的/ drawable文件夹中,我很难将它正确放置在ImageView中。我想调整图像的大小,使其最大化水平分辨率,并且我希望它只是按照比例保持垂直比例。RelativeLayout中的ImageView有顶部和底部填充

我遇到的问题是我的ImageView结束比它需要适合图像高。图像本身看起来很完美;与屏幕一样宽并按比例。但ImageView似乎在顶部和底部都有填充。从我可以告诉它是ImageView包含实际太高的可绘制。

我无法发布图片,因为我是新手,但是如果我这样做,它将是图形布局视图。当我点击ImageView时,普通的蓝色框会在其周围出现,但是在顶部和底部填充了填充,我在设备上看到了相同的填充。即使我拖动蓝色框来尝试调整ImageView的大小,我也不允许将它放大到比以前小(可能是因为ImageView认为drawable是那么高)。从我所知道的情况来看,这可能与图像的密度有关...... ImageView最终在hdpi设备上达到312像素高(208 * 1.5)。

这里是我的XML:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
    <ImageView android:id="@+id/back" android:src="@drawable/categoryheader2" 
     android:layout_width="wrap_content" android:layout_height="wrap_content"> 
    </ImageView> 
</RelativeLayout> 

在此先感谢您的帮助!

回答

10

我猜想android:adjustViewBounds =“真”在ImageView应该做的伎俩。我最近有一个类似的问题,当我试图scale an image to fit the whole width of the view without loosing its proportions

+0

老问题,但仍然出现在那里在我的应用程序 - 谢谢你的回应!我会试试看,并接受答案,如果它的工作! –

+0

真的很遗憾,你没有得到一个回答标记 但是,您为我节省了一些搜索感谢 – Sidewinder94

+0

非常感谢,知道这一点很可能很标准,很少有人会问这个问题,对于我来说,作为初学者,它非常方便。 –

1

您是否试过标签:android:scaleType="fitXY"android:scaleType="centerCrop"您的ImageView

+0

感谢您的回复,但没有任何一种规模可行。 fitXY只是使图像更适合(消除“填充”,但搞乱了图像的比例),centerCrop也使图像更高,但也使它更宽,以保持比例,但当然现在双方被裁剪。 :( –