代码之家  ›  专栏  ›  技术社区  ›  Ashutosh Patoa

使用Glide拉伸图像以适合图像视图

  •  7
  • Ashutosh Patoa  · 技术社区  · 6 年前

    我想让图像适合我的 image view 。我正在使用Glide以编程方式加载图像。它会加载图像,但不会拉伸图像以适合我的整个 图像视图 .它在两边都留下了这样的空白

    我想在不裁剪的情况下显示整个图像,因此无法使用

    android:scaleType="centerCrop"
    

    有一种方法可以将整个图像融入我的 图像视图 通过使用

    android:background="@drawable/image"
    

    它可以拉伸我的图像以适应整个 图像视图 。但是,如果使用Glide加载图像,如何实现相同的效果?

    4 回复  |  直到 5 年前
        1
  •  14
  •   Ashutosh Patoa    6 年前

    我终于找到了答案。 简单使用

    android:scaleType="fitXY"
    

    在xml ImageView标记中,使用Glide或BitmapFactory加载图像,而不使用任何scaleType属性。

    <ImageView
     android:id="@+id/image_view"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:scaleType="fitXY"/>
    

    将图像加载到图像视图

    Glide.with(this).load(imageUrl).into((ImageView)findViewById(R.id.image_view));
    
        2
  •  2
  •   Dnyaneshwar Panchal    6 年前

    可以使用中心裁剪方法。

    Glide.with(context).load(url).centerCrop().placeholder(R.drawable.default_image).into(img);     
    
        3
  •  2
  •   Ajith M A    4 年前

    如果希望图像适合宽度并具有动态高度,而不裁剪内容,例如:像instagram提要一样,将高度设置为包裹内容,将宽度设置为匹配父对象,并将adjustViewBounds设置为true。

      <ImageView
            android:id="@+id/imageView"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:minHeight="200dp"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent" />
    
        4
  •  0
  •   Janvi Vyas    6 年前

    试试这个 在中间显示完整图像

    imageview.setScaleType(ScaleType.FIT_CENTER);