1

我正在开发一个需要下载图像并将其显示在 ImageView 中的 Android 应用程序。位图被传递到主 java 文件并添加到图像视图中,如下所示:

comic = (ImageView) findViewById(R.id.comic);
comic.setImageBitmap(c.getImageBitmap());

这有效,只是图像的左侧从屏幕上消失了。ImageView 位于保持正确大小的 ScrollView 中。这意味着 ScrollView 的右侧有黑色空间,图像在左侧被截断。

ImageView 的 XML 是这样的:

<ScrollView 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <HorizontalScrollView 
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

        <ImageView 
            android:id="@+id/comic" 
            android:layout_height="fill_parent"
            android:layout_width="fill_parent" 
            android:layout_gravity="center"
            android:src="@drawable/xkcdlogo" />
    </HorizontalScrollView>
</ScrollView>

知道为什么我的图像被切断了吗?

谢谢!

4

3 回答 3

6

您是否尝试过设置 android:scaleType="center" 而不是 android:layout_gravity="center"?

这将使图像在 ImageView 中居中而不缩放。

于 2010-05-14T16:15:32.497 回答
4

android:scaleType="centerCrop"

于 2010-06-16T22:35:00.090 回答
2

最终对我有用的解决方案是将内部 ImageView 设置为大于最大图像的固定高度和宽度,添加大量填充,然后在 xml 中设置 android:scrollX 和 android:scrollY 以获取放置的图像我需要它们的地方。这解决了图像在水平滚动中被裁剪的问题。

于 2010-07-31T21:34:27.773 回答