渲染图像太高时出错(空白页)

时间:2017-04-04 10:56:06

标签: android image scrollview

问题

我有一个基本上有滚动视图的片段,其中全屏显示图像视图(向下看布局)。 如果为ImageView加载的图像太高(超过2000像素),结果是图像视图将显示空白页。

我可以向下滚动,就好像会显示图像一样。

我从720x2352的原始图像开始,然后我尝试切割部分图像。在2000高度像素处,图像被正确显示。

需要工作的手机尺寸为720x1280。

代码

布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#FFFFFF"
    android:orientation="vertical">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:adjustViewBounds="true"/>
    </ScrollView>

    <!-- other stuff -->
</LinearLayout>

问题

如何在不使结果图像视图显示空白页面的情况下保留图像的高度?

1 个答案:

答案 0 :(得分:1)

您共享的像素对于系统来说太大了。您可以简单地使用像 Glide Picasso 这样的图像加载和缓存库,这有助于调整图像的大小,保持像您所说的宽高比。

你也可以将这个已经叠加的帖子作为参考:

Android: Resize a large bitmap file to scaled output file