得到抽奖

时间:2018-03-01 20:01:10

标签: java android android-glide

我正在使用滑动,一旦检索到图像,它就被放入视图中,视图被扩展,我在构造函数中使用下面的代码。代码返回null。有没有办法等到它返回drawable?它适用于听众,这就是为什么我要问是否有一种方法可以等待,因为它可以在构造函数中。

代码:

滑翔:

Glide
        .with(activity).asBitmap()
        .load(imageURL)
        .into(new SimpleTarget<Bitmap>(currentMap.getWidth(), currentMap.getHeight()) {
            @Override
            public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {

                currentMap.setUpMap()
                });

            }

可查看:

drawable = this.getDrawable();

错误:

  

java.lang.NullPointerException:尝试调用虚方法&#39; int android.graphics.drawable.Drawable.getIntrinsicWidth()&#39;在空对象引用上

1 个答案:

答案 0 :(得分:0)

使用RequestListener<String, GlideDrawable>为您提供可绘制的内容:

GlideDrawable也是Drawable)。

Glide.with(activity)
    .load("...")
    .listener(object : RequestListener<String, GlideDrawable> {
        override fun onResourceReady(resource: GlideDrawable?, model: String?, target: Target<GlideDrawable>?, isFromMemoryCache: Boolean, isFirstResource: Boolean): Boolean {

            // GlideDrawable extends Drawable :)
        }

        override fun onException(e: Exception?, model: String?, target: Target<GlideDrawable>?, isFirstResource: Boolean): Boolean = false
    })

您需要删除asBitmap()来电。 我的代码是kotlin,因为我从我的项目中复制粘贴它,但我相信你可以理解它。