【发布时间】:2013-10-24 19:15:05
【问题描述】:
我已经阅读了有关支持不同屏幕密度的所有内容。而且,我已将正在显示的图像的适当变体提供给适当的文件夹。然而,我对某事感到困惑。 ImageView 的文档说将 android:layout_width 和 android:layout_height 设置为 "fill_parent"/"match_parent" 将导致图像拉伸以填充屏幕。 (这似乎是必要的,因为并非所有屏幕密度都提供相同尺寸/像素数的屏幕,我不希望那些额外的几个像素导致屏幕底部的填充) 这似乎在其他任何时候都有效,但是当 ImageView 放置在 Horizontalscrollview 内部并且图像的宽度比屏幕的宽度长时,这对我不起作用。
我的代码如下: (活动在我的清单中设置为横向)
<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/hscrollview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dp"
android:fadingEdge="none"
android:scrollbars="none"
android:overScrollMode="never" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dp"
android:fadingEdge="none"
android:scrollbars="none"
android:overScrollMode="never" >
<ImageView
android:id="@+id/MapImageView"
android:src="@drawable/map"
android:layout_width="wrap_content"
android:layout_height="fill_parent" />
</RelativeLayout>
</HorizontalScrollView>
编辑:我将 :src 替换为 :background 无效。
这是我在平板电脑等设备上获得的效果。理想情况下,我希望图像填满整个屏幕,就像它在下面一样,在具有典型 480x800 分辨率等的手机上。
【问题讨论】:
-
请把你用上面的数据得到的图片和你想要的图片贴出来。并在ImageView中使用“background”而不是“src”
-
已添加编辑。将 :src 更改为 :background 没有效果。
-
最好将尺寸设置为“dp”作为高度吗?
-
不要对高度或宽度使用硬编码值。这是一个不好的做法
标签: android imageview horizontalscrollview stretching