有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

ImageView中的java位图从屏幕上裁剪下来

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

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

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

ImageView的XML如下所示:

<ScrollView 
    安卓:layout_width="fill_parent"
    安卓:layout_height="fill_parent">

    <HorizontalScrollView 
        安卓:layout_width="fill_parent"
        安卓:layout_height="fill_parent">

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

你知道为什么我的形象被切断了吗

谢谢


共 (3) 个答案

  1. # 1 楼答案

    android:scaleType=“centerCrop”

  2. # 2 楼答案

    你试过设置android:scaleType=“center”而不是android:layout\u gravity=“center”吗

    这将使图像在ImageView中居中,而无需缩放

  3. # 3 楼答案

    最终对我有效的解决方案是,将内部ImageView设置为比最大的图像具有固定的高度和宽度,添加大量填充,然后在xml中设置android:scrollX和android:scrollY,以将图像放置在我需要的位置。这修复了水平滚动中图像被剪切的问题