2017-08-11 54 views

回答

0

最后我没有找到一种方法,这让我没有战略Glide.into(new SimpleTarget<Bitmap>(){ ... });,那就是:

int largeIconSize = Math.round(64 * context.getResources().getDisplayMetrics().density); 
GlideApp.with(context) 
     .asBitmap() 
     .load(largeIconUrl) 
     .override(largeIconSize, largeIconSize) 
     .placeholder(placeHolderResource) 
     .into(new BaseTarget<Bitmap>() { 
      @Override 
      public void onResourceReady(Bitmap resource, Transition<? super Bitmap> transition) { 
       notificationBuilder.setLargeIcon(resource); 
       publish(); 
      } 

      @Override 
      public void getSize(SizeReadyCallback cb) { 
       cb.onSizeReady(largeIconSize, largeIconSize); 
      } 

      @Override 
      public void onLoadFailed(@Nullable Drawable errorDrawable) { 
       super.onLoadFailed(errorDrawable); 
       notificationBuilder.setLargeIcon(((BitmapDrawable) errorDrawable).getBitmap()); 
       publish(); 
      } 

      @Override 
      public void onLoadStarted(@Nullable Drawable placeholder) { 
       super.onLoadStarted(placeholder); 
       notificationBuilder.setLargeIcon(((BitmapDrawable) placeholder).getBitmap()); 
       publish(); 
      } 
     }); 

publish()是:

Notification notification = notificationBuilder.build(); 
notificationManager.notify(notificationID, notification); 
这里