标签: android-glide

Glide 无法解析方法 .asGif()

我有代码:

  Glide.with(getActivity())
  .load(myurl)
  .asGif()
  .into(ivGif);
Run Code Online (Sandbox Code Playgroud)

我在 gradle 中导入了 glide:

  repositories {
  mavenCentral()
  maven { url 'https://maven.google.com' }
  }

dependencies {
  compile 'com.github.bumptech.glide:glide:4.2.0'
  annotationProcessor 'com.github.bumptech.glide:compiler:4.2.0'
}
Run Code Online (Sandbox Code Playgroud)

编译器说

无法解析方法.asGif()

我错过了什么吗?

android android-glide

3
推荐指数
1
解决办法
3506
查看次数

在 Glide 中制作方形图像,然后将其四舍五入

我解决了一个典型的图像任务:尝试centerCrop()如何使用 Glide 库对图像进行舍入?,但结果似乎是Glide 圆形图像被裁剪在此处输入图片说明

(非圆形)。

我认为 Glide (v.4) 没有正确裁剪图像。我尝试了许多变体,例如GlideApp.with(photo).load(url).circleCrop().into(photo). 可能更好的是首先从矩形创建一个正方形,然后使其成为圆形。

这是 XML 的一部分:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    >

    <ImageView
        android:id="@+id/photo"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_marginStart="15dp"
        android:layout_marginLeft="15dp"
        android:layout_marginTop="20dp"
        android:adjustViewBounds="true"
        android:scaleType="fitCenter"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:src="@drawable/image_1"
        />

    <TextView
        android:id="@+id/name"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="7dp"
        android:layout_marginLeft="7dp"
        android:lineSpacingExtra="1sp"
        android:textColor="@color/black"
        android:textSize="20sp"
        app:layout_constraintEnd_toStartOf="parent"
        app:layout_constraintHorizontal_weight="1"
        app:layout_constraintStart_toEndOf="@+id/photo"
        app:layout_constraintTop_toTopOf="@+id/photo"
        tools:text="Name"
        />

</android.support.constraint.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)

更新

抱歉,源图像有问题。我不认为它是用上下白色填充物平方的(添加了线条):

在此处输入图片说明

另一个例子:

在此处输入图片说明

这是因为在后端,他们缩小了矩形图像,使其成为带有白色边框的正方形

android android-glide

3
推荐指数
1
解决办法
4478
查看次数

为什么 Kotlin 在从资源中设置 Glide error drawable 时要创建扩展函数?

我是 Kolin 的新手,我正在将旧代码库转换为 Kotlin。使用 Glide 加载图像时出现错误。

我的代码

Glide.with(context)
.load(url)
.apply(options)
.error(R.drawable.ic_no_image)
.into(imageView)
Run Code Online (Sandbox Code Playgroud)

通常这是正确的。但是我在 error() 构建器方法中收到来自 Kotlin 编译器的类型不匹配错误。

必需:RequestBuilder

任何人都有任何没有扩展功能的解决方案。

android kotlin android-glide

3
推荐指数
1
解决办法
631
查看次数

如何使用不记名令牌身份验证为下载图像文件配置 Glide?

我想从身份验证 API 下载图像。如何下载配置 Glide?

GlideUrl glideUrl = new GlideUrl(url,
new LazyHeaders.Builder()
    .addHeader("Authorization", token)
    .build());

GlideApp.with(context) 
        .load(glideUrl)
         .into(imageView);
Run Code Online (Sandbox Code Playgroud)

java authentication api android android-glide

3
推荐指数
1
解决办法
1157
查看次数

Glide:支持的文件类型

就是这样:该库支持哪些确切的文件格式?该文档没有具体说明这一点,对此事含糊其辞:

Glide 支持获取、解码和显示视频静止图像、图像和动画 GIF

特别令人感兴趣的是它支持哪些视频格式(如果有的话)(什么是视频静态?)。

android file-format android-glide

3
推荐指数
1
解决办法
2302
查看次数

如何使用 Glide 将 svg 图像加载到图像视图

SVG我在这个网址中有一张图片。svg 图像链接 。我想将此SVG图像从加载urlimage view. 我曾经将此图像Glide加载到.SVGimage view

这是滑行代码:

 Glide.with( context)
                .setDefaultRequestOptions(new RequestOptions().timeout(60000))
                .load( "https://restcountries.eu/data/zwe.svg" )
                .thumbnail( 0.5f )
                .override( 200, 200 )
                .diskCacheStrategy( DiskCacheStrategy.ALL )
                .listener(new RequestListener<Drawable>() {
                    @Override
                    public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
                        progressLayout.setVisibility(View.GONE);
                        return false;
                    }

                    @Override
                    public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
                        progressLayout.setVisibility(View.GONE);
                        flag_iv.setEnabled(true);
                        return false;
                    }

                })
                .into( flag_iv );
Run Code Online (Sandbox Code Playgroud)

XML代码: …

java svg android android-layout android-glide

3
推荐指数
1
解决办法
6498
查看次数

在Android中清除Glide图像缓存

我正在使用滑动库来显示图像.我试图通过使用以下代码清除滑动缓存:

Glide.get(MainActivity.this).clearDiskCache();
Glide.get(MainActivity.this).clearMemory();
Run Code Online (Sandbox Code Playgroud)

上面的代码在Async中,我在Do背景部分调用.

当我运行这个时,我总是得到:

Caused by: java.lang.IllegalArgumentException: You must call this method on the main thread
at com.bumptech.glide.util.Util.assertMainThread(Util.java:135)
at com.bumptech.glide.Glide.clearMemory(Glide.java:370)
Run Code Online (Sandbox Code Playgroud)

这可能有什么问题?如果我在MainThread中使用上面的内容,则要求在后台运行它.

如何清除缓存?

谢谢!

java android android-glide

2
推荐指数
1
解决办法
4200
查看次数

滑行:加载指定的图像区域

我使用以下代码使用Glide从服务器加载图像:

private void loadImage(Context context, String url, ImageView imageView, int x1, int y1, int x2, int y2) {
    Glide.with(context)
       .load(url)
       .into(imageView);
}
Run Code Online (Sandbox Code Playgroud)

我需要在ImageView中只显示一段图像.这件作品的坐标放在变量x1,x2,y1和y2中.如何使用Glide仅剪切所需的图像部分?

java android image-loading android-glide

2
推荐指数
1
解决办法
398
查看次数

如何使用Glide v4.0.0RC1从Url​​将Image加载到ImageView中

我刚刚在我的应用程序中将Glide库从v3更新到v4.但是现在我无法从网址加载图片.以前它与v3一起工作正常.

这是我的Glide代码:

Glide.with(context).load(galleryList.get(itemPosition).getImage()).thumbnail(Glide.with(context).load(R.drawable.balls)).apply(options).into(holder.kolamImage);
Run Code Online (Sandbox Code Playgroud)

v4有什么变化?我浏览了文档,但仍然没有帮助.

android android-glide

2
推荐指数
2
解决办法
2万
查看次数

如果scaleType为centerCrop,则Glide RoundedCornersTransformation不会进行任何更改

我正在使用Glide 4.3.0wasabeef / glide-transformations在图像视图的左下角和右下角添加一个角半径。图像已加载,但未应用转换,并且角落看不到任何变化。

这是我的Glide转换:

Glide.with(context)
    .load(message.imageUrl)
    .apply(bitmapTransform(new RoundedCornersTransformation(25, 0, RoundedCornersTransformation.CornerType.BOTTOM)))
    .into(aq.id(R.id.ivSingleImage).getImageView());
Run Code Online (Sandbox Code Playgroud)

我的进口如下:

import com.bumptech.glide.Glide;
import jp.wasabeef.glide.transformations.RoundedCornersTransformation;
import static com.bumptech.glide.request.RequestOptions.bitmapTransform;
Run Code Online (Sandbox Code Playgroud)

图像已加载,但未应用任何转换。这个实施正确吗?

我也试过CornerType.BOTTOM_LEFTCornerType.BOTTOM_RIGHT

编辑

我注意到只有在scaleType设置为centerCrop时才会发生这种情况。如果我将其从XML中删除,它可以工作,但是图像的左右两侧有2个大空格:

<ImageView
     android:id="@+id/ivSingleImage"
     android:layout_width="match_parent"
     android:layout_height="100dp"
     android:layout_marginRight="5dp"
     android:layout_weight="1"
     android:background="@color/white"
     android:scaleType="centerCrop" <!--Removing this works. But leaves two spaces on left and right sides-->
     android:layout_marginEnd="5dp" />
Run Code Online (Sandbox Code Playgroud)

参考update ^,如何获得image centerCrop并仍具有舍入的变换?

android android-glide

2
推荐指数
1
解决办法
1584
查看次数